Wednesday, February 10, 2010

Using StringBuilder in .NET

StringBuilder has an Append method that returns a reference to itself. This is useful for when you want to append several items in one go. The following code is an example. Obviously, you'll get more benefit the more items you add:


StringBuilder sb = new StringBuilder( ) ;
string s = sb.Append( @"Hello " )
.Append( @"World" )
.ToString( ) ;

Editors Note: Here's the equivalent in VB.NET, which isn't quite as useful because you have to append the line breaks and, interestingly, the "dot" (.) has to go at the ends of the lines or you have to put the .Append at the end of the lines as shown. In other words, this works:


Dim sb As StringBuilder = New StringBuilder
Dim s As String = sb.Append("Hello "). _
Append("World"). _
Append("Junk"). _
ToString()

...and this works too:


Dim sb As StringBuilder = New StringBuilder
Dim s As String = sb.Append("Hello ").Append _
("World").Append _
("Junk").ToString

...but this doesn't:


Dim sb As StringBuilder = New StringBuilder
Dim s As String = sb.Append("Hello ") _
.Append("World") _
.Append("Junk") _
.ToString()

No comments:

Post a Comment

Followers