0

vb.net では、文字列を配列に分割したいのですが、配列内のインデックスの数も知りたいです。

vb6では、次のように記述します

 dim v1, arrIN(), idcCount
    v1 = "1,2,3,4,5"
    arrin() = split(v1,",")
    idcCount = ubound(arrin))

以下を使用して、これらの値を実際に配列に入れることができます。

 Dim arrIN() = Split(v1, ",")

しかし、インデックスの数を取得する方法がわかりません。これをイミディエイト ウィンドウでテストしようとすると、以下のメッセージが表示されます。

 ?UBound(arrIN())

インデックスの数が、インデックス付き配列の次元数よりも少なくなっています。

4

2 に答える 2

1

arrVar.GetUpperBound(0)およびarrVar.GetLowerBound(0)メソッドを使用できます。

MSDNリファレンスを見てください: Array.GetUpperBound(dimension)

于 2012-05-01T03:23:36.863 に答える
1
    Dim v1 As String = "1,2,3,4,5"
    Dim arrIN() As String = Split(v1, ",")

    'Gets the total number of elements in the array
    Dim a As Integer = arrIN.Length

    'Gets the index of the last element
    Dim b As Integer = arrIN.GetUpperBound(0)

この場合には:

arrIN.Length = 5

arrIN.GetUpperBound(0)=4

GetUpperBound(0) のゼロは、上位インデックスが必要なディメンションです。

AVD が正しい答えをくれました。必要な場合に備えて、arrIN.Length を追加しました。

于 2012-05-01T03:45:47.077 に答える