1

わかりましたので、streamreader で CSV ファイルを読み取り、空の行を読み取ったとき、または行が正しい形式ではないときに例外インデックスを範囲外に取得します。

このエラーが発生したときにcsvファイルの次の行に移動する解決策はありますか

4

1 に答える 1

1

最善の方法は、CSV を手動で解析することをまったく避け、代わりに利用可能な CSV リーダーのいずれかを使用することです。たとえば、この高速 CSV-reader .


例外に反応する代わりに、最初に空の行をスキップします。

a の代わりに、LinqStreamReaderでも使用できます。File.ReadLines

Dim lines = From line In File.ReadLines(path)
            Where line.Length <> 0
' now you can enumerate all not-empty lines '
For Each line In lines
    ' ... '
Next

あなたが主張する場合Streamreader

Using sr = New StreamReader(path)
    While Not sr.EndOfStream
        Dim line = sr.ReadLine()
        If Not String.IsNullOrEmpty(line) Then
            ' ... '
        End If
    End While
End Using
于 2012-09-26T11:26:02.160 に答える