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 анализировать файлы двух типов: с разделителями или с фиксированной шириной. Некоторые свойства, такие как 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. |