Analýza textových souborů pomocí objektu TextFieldParser (Visual Basic)

Objekt TextFieldParser umožňuje analyzovat a zpracovávat velmi velký soubor, který je strukturovaný jako sloupce s oddělovači textu, jako jsou soubory protokolů nebo starší informace o databázi. Analýza textového souboru TextFieldParser se podobá iteraci textového souboru, zatímco metoda analýzy extrahování polí textu je podobná metodám manipulace s řetězci, které se používají k tokenizaci řetězců s řetězcovými řetězci.

Analýza různých typů textových souborů

Textové soubory můžou mít pole s různou šířkou oddělenou znakem, například čárkou nebo mezerou tabulátoru. Definujte TextFieldType a oddělovač, jako v následujícím příkladu, který pomocí SetDelimiters metody definuje textový soubor oddělený tabulátorem:

testReader.SetDelimiters(vbTab)

Jiné textové soubory můžou mít pevné šířky polí. V takových případech musíte definovat TextFieldType šířky FixedWidth jednotlivých polí a definovat je jako v následujícím příkladu. Tento příklad používá metodu SetFieldWidths k definování sloupců textu: první sloupec je široký 5 znaků, druhý je 10, třetí je 11 a čtvrtý je proměnlivá šířka.

testReader.SetFieldWidths(5, 10, 11, -1)
testReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.FixedWidth

Jakmile je formát definovaný, můžete soubor procházet pomocí ReadFields metody pro zpracování jednotlivých řádků.

Pokud pole neodpovídá zadanému formátu, vyvolá MalformedLineException se výjimka. Pokud jsou takové výjimky vyvolány, ErrorLine text a ErrorLineNumber vlastnosti obsahují text, který způsobuje výjimku, a číslo řádku daného textu.

Analýza souborů s několika formáty

PeekChars Metodu objektu TextFieldParser lze použít ke kontrole každého pole před jeho přečtením, což vám umožní definovat více formátů polí a odpovídajícím způsobem reagovat. Další informace naleznete v tématu Postupy: Čtení z textových souborů s více formáty.

Viz také