TextFieldParser 类

定义

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

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可以分析两种类型的文件:带分隔符或固定宽度的文件。 某些属性(如 DelimitersHasFieldsEnclosedInQuotes )仅在使用带分隔符的文件时有意义,而 FieldWidths 属性仅在处理固定宽度文件时有意义。

下表列出了涉及 Microsoft.VisualBasic.FileIO.TextFieldParser 对象的任务示例。

功能 查看
从带分隔符的文本文件读取 如何:读取逗号分隔的文本文件
从固定宽度的文本文件中读取 如何:读取固定宽度的文本文件
从具有多种格式的文本文件中读取 如何:读取具有多种格式的文本文件

构造函数

TextFieldParser(Stream)

初始化 TextFieldParser 类的新实例。

TextFieldParser(Stream, Encoding)

初始化 TextFieldParser 类的新实例。

TextFieldParser(Stream, Encoding, Boolean)

初始化 TextFieldParser 类的新实例。

TextFieldParser(Stream, Encoding, Boolean, Boolean)

初始化 TextFieldParser 类的新实例。

TextFieldParser(String)

初始化 TextFieldParser 类的新实例。

TextFieldParser(String, Encoding)

初始化 TextFieldParser 类的新实例。

TextFieldParser(String, Encoding, Boolean)

初始化 TextFieldParser 类的新实例。

TextFieldParser(TextReader)

初始化 TextFieldParser 类的新实例。

属性

CommentTokens

定义注释标记。 注释标记是一个字符串,当位于行首时,指示该行是一个注释并且分析器应该忽略该行。

Delimiters

定义文本文件的分隔符。

EndOfData

如果在当前光标位置到文件末尾之间没有非空、非注释行,则返回 True

ErrorLine

返回导致最近发生的 MalformedLineException 异常的行。

ErrorLineNumber

返回导致最近发生的 MalformedLineException 异常的行的行号。

FieldWidths

表示正在分析的文本文件中每一列的宽度。

HasFieldsEnclosedInQuotes

指示在分析分隔的文件时是否用引号将字段括起来。

LineNumber

返回当前行号,如果流中没有更多字符,则返回 -1。

TextFieldType

指定要分析的文件是分隔的还是固定宽度的。

TrimWhiteSpace

指示是否应移除字段值中的前导和尾随空白。

方法

Close()

关闭当前的 TextFieldParser 对象。

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[])

将读取器的分隔符设为指定的值,并将字段类型设为 Delimited

SetFieldWidths(Int32[])

将读取器的分隔符设置为指定值。

ToString()

返回表示当前对象的字符串。

(继承自 Object)

显式接口实现

IDisposable.Dispose()

释放由 TextFieldParser 对象使用的资源。

适用于

另请参阅