TextFieldParser 对象

更新:2007 年 11 月

提供用于分析结构化文本文件的方法和属性。

Public Class TextFieldParser

异常

以下情况可能会导致异常:

  • 文本字段与指定的格式不匹配。例如,在固定宽度的文件中,其中一个字段不符合指定的宽度。 (MalformedLineException).

备注

TextFieldParser 对象提供用于分析结构化文本文件的方法和属性。使用 TextFieldParser 分析文本文件与迭代文本文件相似,而用于提取文本中字段的 ReadFields 方法与拆分字符串相似。

TextFieldParser 可以分析两种类型的文件:符号分隔文件或固定宽度文件。有些属性,如 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