TextFieldParser クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
構造化テキスト ファイルの解析に使用するメソッドとプロパティを提供します。
public ref class TextFieldParser : IDisposable
public class TextFieldParser : IDisposable
type TextFieldParser = class
interface IDisposable
Public Class TextFieldParser
Implements IDisposable
- 継承
-
TextFieldParser
- 実装
例
この例では、 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
注釈
オブジェクトは TextFieldParser 、構造化テキスト ファイルを解析するためのメソッドとプロパティを提供します。 を使用 TextFieldParser したテキスト ファイルの解析はテキスト ファイルの反復処理に似ていますが、 メソッドを ReadFields 使用してテキストのフィールドを抽出することは、文字列の分割と似ています。
は TextFieldParser 、区切り記号付きまたは固定幅の 2 種類のファイルを解析できます。 や などのDelimitersHasFieldsEnclosedInQuotes一部のプロパティは、区切りファイルを操作する場合にのみ意味を持ち、FieldWidthsプロパティは固定幅ファイルを操作する場合にのみ意味があります。
次の表に、Microsoft.VisualBasic.FileIO.TextFieldParser オブジェクトに関連するタスクの例を示します。
| 終了 | 解決方法については、 |
|---|---|
| 区切りテキスト ファイルから読み取る | 方法: コンマ区切りのテキスト ファイルを読み取る |
| 固定幅のテキスト ファイルから読み取る | 方法: 固定幅のテキスト ファイルを読み取る |
| 複数の形式のテキスト ファイルから読み取る | 方法: 複数の書式を持つテキスト ファイルを読み取る |
コンストラクター
| 名前 | 説明 |
|---|---|
| TextFieldParser(Stream, Encoding, Boolean, Boolean) |
|
| TextFieldParser(Stream, Encoding, Boolean) |
|
| TextFieldParser(Stream, Encoding) |
|
| TextFieldParser(Stream) |
|
| TextFieldParser(String, Encoding, Boolean) |
|
| TextFieldParser(String, Encoding) |
|
| TextFieldParser(String) |
|
| TextFieldParser(TextReader) |
|
プロパティ
| 名前 | 説明 |
|---|---|
| CommentTokens |
コメント トークンを定義します。 コメント トークンとは、コメント行であることを示すために、行頭に配置される文字列です。コメント トークンの配置された行は、パーサーによって無視されます。 |
| Delimiters |
テキスト ファイルの区切り記号を定義します。 |
| EndOfData |
現在のカーソル位置とファイルの終端との間に、空行またはコメント行以外のデータが存在しない場合、 |
| ErrorLine |
直前に発生した MalformedLineException 例外の原因となった行を返します。 |
| ErrorLineNumber |
直前の MalformedLineException 例外が発生した行の番号を返します。 |
| FieldWidths |
解析するテキスト ファイルの各列の幅を表します。 |
| HasFieldsEnclosedInQuotes |
区切り記号入りファイルを解析する場合に、フィールドが引用符で囲まれているかどうかを示します。 |
| LineNumber |
現在の行番号を返します。ストリームから取り出す文字がなくなった場合は -1 を返します。 |
| TextFieldType |
解析対象のファイルが区切り形式か固定幅形式かを示します。 |
| TrimWhiteSpace |
フィールド値から前後の空白をトリムするかどうかを示します。 |
メソッド
| 名前 | 説明 |
|---|---|
| Close() |
現在の |
| Dispose() |
TextFieldParser オブジェクトによって使用されているリソースを解放します。 |
| Dispose(Boolean) |
TextFieldParser オブジェクトによって使用されているリソースを解放します。 |
| Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| Finalize() |
TextFieldParser オブジェクトがガベージ コレクションにより収集される前にリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
| MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
| PeekChars(Int32) |
カーソルを進めずに、指定された文字数を読み込みます。 |
| ReadFields() |
現在行のすべてのフィールドを読み込んで文字列の配列として返し、次のデータが格納されている行にカーソルを進めます。 |
| ReadLine() |
現在の行を文字列として返し、カーソルを次の行に進めます。 |
| ReadToEnd() |
テキスト ファイルの残りの部分を読み込み、文字列として返します。 |
| SetDelimiters(String[]) |
リーダーの区切り記号を指定された値に設定し、フィールドの種類を |
| SetFieldWidths(Int32[]) |
リーダーの区切り記号を指定の値に設定します。 |
| ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IDisposable.Dispose() |
TextFieldParser オブジェクトによって使用されているリソースを解放します。 |