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可以分析两种类型的文件:带分隔符或固定宽度的文件。 某些属性(如 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 对象使用的资源。  |