C#.NET: Eine Datei zeilenweise einlesen

Aufgabenstellung

Eine Datei wird geöffnet und mit einem Dateizeiger über diese iteriert. Das Einlesen von Strukturdateien (z.B. CSV-Dateien) soll somit ermöglicht werden.

Ansatz

Verwendung der Klasse StreamReader zum Öffnen der Datei und der Methoden ReadLine() um Zeile-für-Zeile einen String zu erhalten.

Lösung


// Pfad muss backslashes maskieren (doppelt)
string pfadZurDatei=
"C:\\meinOrdner\\datei.txt"; 

if (!File.Exists(pfadZurDatei))
{
    // Alternativ Console.Write() nutzen
    MessageBox.Show(
   "Die Datei existiert nicht! Bitte Datei wählen!",
    "Wots lous?");
}
else
{
    StreamReader sr = new StreamReader(pfadZurDatei);
    string inputLine = "";
    
    // Zeilenzahl (um beim Einlesen z.B. Zeilen zu skippen)
    int i=0;
    while ((inputLine = sr.ReadLine()) != null)
    {
        i++;
       // Zeile steht in inputLine... 
       // Es handelt sich um eine CSV Datei
       values = inputLine.Split(new Char[] { ';' });

       // Iteriere über jede Zelle der Zeile
       for(int j = 0; j < values.length; j++)
       {
          string eineZelle=values[j];
       }
    }
}

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.