TextFieldParser 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供分析结构化文本文件的方法和属性。
public ref class TextFieldParser : IDisposablepublic class TextFieldParser : IDisposabletype TextFieldParser = class
    interface IDisposablePublic 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可以分析两种类型的文件:带分隔符或固定宽度的文件。 某些属性(如 Delimiters 和 HasFieldsEnclosedInQuotes )仅在使用带分隔符的文件时有意义,而 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 对象使用的资源。 |