-1

CSV ファイルに 2 つの列があり、各列を個別の配列に格納する必要があります。

Name,AvalibilityAsBoolean
---------------------------
Vagarth Gaurav,True
Dhananjay Menon,False

名前用の配列と、以下のように格納されたブール値としての可用性用の別の配列が必要です。

Name(0) = "Vagarth Gaurav"
Name(1) = "Dhananjay Menon"
Available(0) = True
Available(1) = False

唯一の問題は、CSV を読み取り、文字列とブール値を適切な配列に格納することです。

助けてください、私はVBが初めてです。Visual Basic 2010 を使用しています

4

2 に答える 2

2

この質問は以前に尋ねられたと確信していますが、これは役立つはずです。TextFieldParser クラスを利用して解析を行うと、簡単になります。2 つの配列を管理するためのコードも、このコード例に表示されています。

    Dim arrName() As String
    Dim arrValue() As String

    Using ioReader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\test\test.csv")

        ioReader.TextFieldType = FileIO.FieldType.Delimited
        ioReader.SetDelimiters(",")

        While Not ioReader.EndOfData

            Dim arrCurrentRow As String() = ioReader.ReadFields()

            If arrName Is Nothing Then

                ReDim Preserve arrName(0)
                ReDim Preserve arrValue(0)

                arrName(0) = arrCurrentRow(0)
                arrValue(0) = arrCurrentRow(1)

            Else

                ReDim Preserve arrName(arrName.Length)
                ReDim Preserve arrValue(arrValue.Length)

                arrName((arrName.Length - 1)) = arrCurrentRow(0)
                arrValue((arrValue.Length - 1)) = arrCurrentRow(1)

            End If

        End While
于 2013-02-08T02:52:51.813 に答える
1
Dim sData() As String
Dim arrName, arrValue as New List(Of String)()

Using sr As New StreamReader(sFile)
    While Not sr.EndOfStream
        sData = sr.ReadLine().Split(","c)

        arrName.Add(sData(0).Trim())
        arrValue.Add(sData(1).Trim())
    End While
End Using

値をBoolean(使用可能、使用不可)として保存することをお勧めします。あなたは次のようなことをすることができます:

Dim arrValue As New List(Of Boolean)()
...

    arrValue.Add(Not sData(1).Trim().ToUpper().StartsWith("NOT"))
于 2013-02-08T07:10:38.347 に答える