c# - How to prepend a string to a StringBuilder

c# example - stringbuilder prepend
The following asp.net c# example code demonstrate us how can we prepend a character/text/string/substring to a StringBuilder object programmatically at run time in an asp.net application. .Net framework's StringBuilder Class represent a mutable string of characters.

StringBuilder Class has an Append() method to append text to it but there is no Prepend method or property to prepend content to a StringBuilder object.

Append indicate content will be add at the end of an object and Prepend indicate the content will be add at the beginning of the specified object.

StringBuilder.Append(String) overloaded method allow us to append a copy of the specified string to this instance. StringBuilder Class has no Prepend method. But we can technically prepend text/substring to a StringBuilder object.

Prepend indicate that the new substring will be add at the beginning of StringBuilder object, so we can simply use the StringBuilder Insert() method to add the new substring at the beginning of StringBuilder object.

StringBuilder.Insert(Int32, String) overloaded method allow us to insert a string into this instance at the specified character position. So if we insert the new string to StringBuilder characters zero (0) index position then it will work as like prepend. Finally we can say, technically StringBuilder Insert() method work as like Prepend method if we specify the inserting index position to zero.
stringbuilder-prepend.aspx

<%@ Page Language="C#" AutoEventWireup="true"%>
  
<!DOCTYPE html>
  
<script runat="server"> 
    protected void Button1_Click(object sender, System.EventArgs e)  
    {
        StringBuilder stringb = new StringBuilder();
        stringb.Append("Crimson ");

        Label1.Text = stringb.ToString();

        //this line prepend Magenta color in stringbuilder.
        stringb.Insert(0, "Magenta ");
        Label1.Text += "<br />" + stringb.ToString();

        //this line prepend AliceBlue color in stringbuilder.
        stringb.Insert(0, "AliceBlue ");
        Label1.Text += "<br />" + stringb.ToString();

        //this line prepend AntiqueWhite color in stringbuilder.
        stringb.Insert(0, "AntiqueWhite ");
        Label1.Text += "<br />" + stringb.ToString();
    }  
</script>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head id="Head1" runat="server">  
    <title>c# example - stringbuilder prepend</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
    <div>  
        <h2 style="color:MidnightBlue; font-style:italic;">  
            c# example - stringbuilder prepend
        </h2>  
        <hr width="550" align="left" color="Gainsboro" />  
        <br />  
        <asp:Label   
            ID="Label1"   
            runat="server"  
            Font-Size="Large"  
            >  
        </asp:Label>  
        <br /><br /><br />
        <asp:Button   
            ID="Button1"   
            runat="server"   
            Text="stringbuilder prepend"  
            OnClick="Button1_Click"
            Height="40"  
            Font-Bold="true"  
            />  
    </div>  
    </form>  
</body>  
</html>
More c# examples