次の方法で共有


TextFieldParser.ReadFields メソッド

更新 : 2007 年 11 月

現在の行にあるすべてのフィールドを読み込み、それを文字列の配列として返して、カーソルを次のデータを含む行に進めます。

' Usage
Dim value As String() = TextFieldParserObject.ReadFields()
' Declaration
Public Function ReadFields() As String()

戻り値

String ().

例外

例外がスローされる可能性のある状態を次に示します。

解説

ReadFields メソッドを使って複数の形式のテキスト ファイルを解析できるように、メソッドが呼び出されるたびに TextFieldType、Delimiters、および FieldWidths の値が (これらが指定されている場合に) 調べられます。TextFieldType プロパティと FieldWidths または Delimiters のプロパティは、必要に応じて正しく設定する必要があります。TextFieldType が Delimited に設定されていて Delimiters が設定されていない場合、または TextFieldType が FixedWidth に設定されていて FieldWidths が設定されていない場合、例外がスローされます。

ReadFields が空白行を検出した場合は、空白行がスキップされて次の空白でない行が返されます。

メモ :

ReadFields メソッドが現在の行を解析できない場合、例外が発生し、次の行に移動しません。これにより、アプリケーションがその行の解析を再度試みることが可能になります。

処理手順

ReadFields メソッドに関連するタスクの例を次の表に示します。

目的

参照項目

区切り記号で区切られたファイルからの読み取り

方法 : Visual Basic でコンマ区切りのテキスト ファイルを読み取る

固定幅のファイルからの読み込み

方法 : Visual Basic で固定幅のテキスト ファイルを読み取る

使用例

次の例は、 ReadFields メソッドを使ってファイル ParserText.txt からデータを読み取り、フィールドを Testfile.txt に書き込みます。

Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\ParserText.txt")
    MyReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited
    MyReader.Delimiters = New String() {","}
    Dim currentRow As String()
    While Not MyReader.EndOfData
        Try
            currentRow = MyReader.ReadFields()
            For Each currentField As String In currentRow
                My.Computer.FileSystem.WriteAllText _
                ("C://testfile.txt", currentField, True)
            Next
        Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
            MsgBox("Line " & ex.Message & " is invalid.  Skipping")
        End Try
    End While
End Using

必要条件

名前空間 : Microsoft.VisualBasic.FileIO

クラス : TextFieldParser

アセンブリ : Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll 内)

アクセス許可

必要なアクセス許可を次に示します。

アクセス許可

説明

FileIOPermission

関連する列挙値 : Unrestricted

SecurityPermission

関連する列挙値 : ControlEvidence

詳細については、「コード アクセス セキュリティ」および「アクセス許可の要求」を参照してください。

参照

処理手順

方法 : Visual Basic でコンマ区切りのテキスト ファイルを読み取る

方法 : Visual Basic で固定幅のテキスト ファイルを読み取る

方法 : Visual Basic で複数の書式を持つテキスト ファイルを読み取る

概念

TextFieldParser オブジェクトによるテキスト ファイルの解析

参照

TextFieldParser オブジェクト

TextFieldParser.ReadFields

TextFieldParser.TextFieldType プロパティ

TextFieldParser.FieldWidths プロパティ

TextFieldParser.Delimiters プロパティ

TextFieldParser.ReadLine メソッド