.NET Framework 4からは、バッファのクリアにStringBuilder.Clearメソッドを使うことが出来ます。 結果はLengthに0を指定した場合と同じです。
StringBuilder.Clearメソッドを使ってStringBuilderの内容をクリアする
using System;
using System.Text;
class Sample {
static void Main()
{
var sb = new StringBuilder("The quick brown fox jumps over the lazy dog");
Console.WriteLine("<{0}> (Length={1})", sb, sb.Length);
// Clearメソッドでバッファをクリアする
sb.Clear();
Console.WriteLine("<{0}> (Length={1})", sb, sb.Length);
// 文字列を追加
sb.Append("The quick brown fox");
Console.WriteLine("<{0}> (Length={1})", sb, sb.Length);
// 長さを0にする (Clearメソッドと同じ操作となる)
sb.Length = 0;
Console.WriteLine("<{0}> (Length={1})", sb, sb.Length);
// 文字列を追加
sb.Append("The quick brown fox");
Console.WriteLine("<{0}> (Length={1})", sb, sb.Length);
}
}
実行結果
<The quick brown fox jumps over the lazy dog> (Length=43) <> (Length=0) <The quick brown fox> (Length=19) <> (Length=0) <The quick brown fox> (Length=19)