The StringBuilder Class

For more efficient string manipulation, you can use the StringBuilder class, which has methods that allow you to modify its internal character data without allocating a new string for each operation.
StringBuilder instance wraps a single Unicode string and allows you to modify that string in different ways.
StringBuilder can be found in the System.Text namespace.
Constructing a StringBuilder:
1
2
StringBuilder sb1 = new StringBuilder();    // Empty string
StringBuilder sb2 = new StringBuilder("Sean");
Modifying internal string:
1
2
3
4
sb2.Append(" was here");
sb2.AppendFormat(" on {0:d}", DateTime.Today);
sb2.Replace("Sean", "Kilroy");
sb2.Insert(0, "Mr. ");          // Insert at start of string
Other things that you can do with a StringBuilder object:


1
2
3
char third = sb2[2];            // 3rd character
string s = sb2.ToString();      // Convert to string
int len = sb2.Length;           // # chars