「VB.NET」StringBuilderでバッファの容量を変更する

2021年11月29日

書式
1.Public Property Capacity As Integer
現在のインスタンスによって割り当てられたメモリに格納できる最大文字数を取得または設定します。
2.Public Function Append (value As StringBuilder) As StringBuilder
指定された文字列ビルダーの文字列形式をこのインスタンスに追加します。
使用例

Imports System.Text

Module Module1

    Public Sub Main()

        ' 容量のバッファを確保してインスタンスを作成
        Dim sb As New StringBuilder(9)

        Console.WriteLine("長さ:{1}, 容量:{2}) 文字列:<{0}>", sb, sb.Length, sb.Capacity)

        ' バッファのサイズを超える長さの文字列を追加
        sb.Append("テストデータ サンプル")

        Console.WriteLine("(長さ:{1}, 容量:{2}) 文字列:<{0}>", sb, sb.Length, sb.Capacity)

        ' 容量を現在の長さの3倍にする
        sb.Capacity = sb.Length * 3

        Console.WriteLine("(長さ:{1}, 容量:{2}) 文字列:<{0}>", sb, sb.Length, sb.Capacity)

        ' 文字列を追加
        sb.Append(" test data 123 456")
        Console.WriteLine("(長さ:{1}, 容量:{2}) 文字列:<{0}>", sb, sb.Length, sb.Capacity)

        Console.ReadKey()
    End Sub

End Module

実行結果

長さ:0, 容量:9) 文字列:<>
(長さ:11, 容量:18) 文字列:<テストデータ サンプル>
(長さ:11, 容量:33) 文字列:<テストデータ サンプル>
(長さ:29, 容量:33) 文字列:<テストデータ サンプル test data 123 456>

 

VB.net

Posted by arkgame