Megosztás a következőn keresztül:


Szövegfájlok elemzése a TextFieldParser objektummal (Visual Basic)

Az TextFieldParser objektum lehetővé teszi a nagyon nagy méretű fájlok elemzését és feldolgozását, amelyek tagolt szélességű szövegoszlopokként vannak strukturálva, például naplófájlok vagy régi adatbázisadatok. A szövegfájlok TextFieldParser elemzése hasonló a szövegfájlon keresztüli iteráláshoz, míg a szövegmezők kinyerésére szolgáló elemzési módszer hasonló a tagolt sztringek tokenizálásához használt karakterlánc-kezelési módszerekhez.

Különböző típusú szövegfájlok elemzése

A szövegfájlok különböző szélességű mezőket tartalmazhatnak, amelyeket egy karakter, például egy vessző vagy egy tabulátorterület határolt. Határozd meg a TextFieldType és az elválasztójelet, az alábbi példához hasonlóan, amely a SetDelimiters módszert használja egy tabulátorral tagolt szövegfájl definiálásához.

testReader.SetDelimiters(vbTab)

Más szövegfájlok mezőszélességei rögzítettek lehetnek. Ilyen esetekben meg kell határozni, hogy az TextFieldType elnevezése FixedWidth legyen, és definiálni kell az egyes mezők szélességét, ahogyan az alábbi példában is látható. Ez a példa a szövegoszlopok meghatározására használja a SetFieldWidths módszert: az első oszlop 5 karakter széles, a második 10, a harmadik 11, a negyedik pedig változó szélességű.

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

A formátum definiálása után végighaladhat a fájlon, a ReadFields metódussal pedig feldolgozhatja az egyes sorokat.

Ha egy mező nem egyezik meg a megadott formátummal, a rendszer kivételt MalformedLineException jelez. Ilyen kivételek esetén a ErrorLine és ErrorLineNumber tulajdonságok a kivételt okozó szöveget és annak sorszámát tartják.

Fájlok elemzése több formátummal

Az PeekChars objektum metódusával olvasás előtt ellenőrizheti az TextFieldParser egyes mezőket, így több formátumot is meghatározhat a mezőkhöz, és ennek megfelelően reagálhat. További információ : Olvasás szövegfájlokból több formátummal.

Lásd még