Rubrik: Dateisystem · Dateien - allgemein | VB-Versionen: VB2005 - VB2015 | 07.03.16 |
Auslesen einer CSV-Datei mit .NET Boardmitteln Dieses Beispiel zeigt, wie man mit Hilfe der TextFieldParser-Klasse eine CSV-Datei ein- bzw. auslesen kann. | ||
Autor: Dieter Otter | Bewertung: | Views: 21.579 |
www.tools4vb.de | System: Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Das Auslesen einer CSV-Datei wird mit der TextFieldParser-Klasse aus dem VisualBasic.FileInfo Namespace zum Kinderspiel! Das Parsen der Datei bzw. Datenzeilen überlassen wir hier der Klasse - wir brauchen nur das Feld-Trennzeichen anzugeben und festlegen, ob die Datenfelder generell in Anführungszeichen stehen.
Um die TextFieldParser Klasse nutzen zu können, importieren wir zunächst den VisualBasic.FileInfo Namespace:
Imports Microsoft.VisualBasic.FileIO
Nachfolgender Code zeigt schemenhaft, wie man jetzt eine CSV Datei auswerten kann:
Dim Dateiname As String = "d:\temp\meine-daten.csv" Using csvParser As New TextFieldParser(Dateiname) With csvParser ' Feld-Trennzeichen .SetDelimiters(";") ' Festlegen, ob die Datenfelder in Anführungszeichen stehen .HasFieldsEnclosedInQuotes = True ' bzw. False ' Falls die 1. Zeile die Spaltennamen enthält Dim Header As String = .ReadLine() ' Datei zeilenweise durchlaufen Dim FieldData() As String Do While Not .EndOfData ' alle Datenfelder der aktuellen Datenzeile lesen FieldData = .ReadFields() Debug.Print(FieldData(0)) ' 1. Feld Debug.Print(FieldData(1)) ' 2. Feld Debug.Print(FieldData(2)) ' 3. Feld Loop End With End Using