次の方法で共有


TextFieldParser オブジェクト

更新 : 2007 年 11 月

構造化テキスト ファイルの解析に使用するメソッドとプロパティを提供します。

Public Class TextFieldParser

例外

例外を引き起こす可能性のある状態を次に示します。

  • テキスト フィールドが指定された形式に対応していない。たとえば、固定幅のファイルでは、いずれかのフィールドが指定された幅に収まらない場合です。 (MalformedLineException).

解説

TextFieldParser オブジェクトは、構造化テキスト ファイルの解析に使用するメソッドとプロパティを提供します。テキスト ファイルを TextFieldParser で解析するのは、テキスト ファイルを反復処理するのと同じです。ReadFields メソッドでテキストのフィールドを抽出するのは、文字列を分割するのと同じです。

TextFieldParser では、デリミタで区切られたファイルと固定幅のファイルの 2 種類のファイルを解析できます。Delimiters や HasFieldsEnclosedInQuotes などの一部のプロパティは、デリミタで区切られたファイルでのみ有効ですが、FieldWidths プロパティは固定幅のファイルでのみ有効です。

処理手順

Microsoft.VisualBasic.FileIO.TextFieldParser オブジェクトに関連するタスクの例を次の表に示します。

目的

参照項目

区切り記号で区切られたテキスト ファイルから読み込む

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

固定幅のテキスト ファイルから読み込む

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

複数の形式を持つテキスト ファイルから読み込む

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

使用例

この例では、タブ区切りのテキスト ファイル Bigfile を解析します。

Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser _
("c:\logs\bigfile")
    MyReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited
    MyReader.Delimiters = New String() {vbTab}
    Dim currentRow As String()
    'Loop through all of the fields in the file. 
    'If any lines are corrupt, report an error and continue parsing. 
    While Not MyReader.EndOfData
        Try
            currentRow = MyReader.ReadFields()
            ' Include code here to handle the row.
        Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
            MsgBox("Line " & ex.Message & _
            " is invalid.  Skipping")
        End Try
    End While
End Using

この例は、読み取ったフィールドを処理する関数 processFields が存在することを前提としています。

必要条件

名前空間 : Microsoft.VisualBasic.FileIO

クラス : TextFieldParser

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

参照

処理手順

例外のトラブルシューティング : Microsoft.VisualBasic.FileIO.TextFieldParser.MalformedLineException

概念

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

参照

TextFieldParser オブジェクトのメンバ

TextFieldParser.CommentTokens プロパティ

TextFieldParser.Delimiters プロパティ

TextFieldParser.EndOfData プロパティ

TextFieldParser.ErrorLine プロパティ

TextFieldParser.ErrorLineNumber プロパティ

TextFieldParser.FieldWidths プロパティ

TextFieldParser.HasFieldsEnclosedInQuotes プロパティ

TextFieldParser.LineNumber プロパティ

TextFieldParser.TextFieldType プロパティ

TextFieldParser.TrimWhiteSpace プロパティ

TextFieldParser.Close メソッド

TextFieldParser.PeekChars メソッド

TextFieldParser.ReadFields メソッド

TextFieldParser.ReadLine メソッド

TextFieldParser.ReadToEnd メソッド

TextFieldParser.SetDelimiters メソッド

TextFieldParser.SetFieldWidths メソッド

My.Computer.FileSystem.OpenTextFieldParser メソッド

Microsoft.VisualBasic.FileIO.TextFieldParser