C# Schreiben von Daten in eine CSV-Datei

Minahil Noor 12 Oktober 2023
  1. C# Programm zum Schreiben von Daten in eine CSV-Datei mit Methoden der Klasse CsvHelper
  2. C# Programm zum Schreiben von Daten in eine CSV-Datei mit der Methode WriteAllText()
C# Schreiben von Daten in eine CSV-Datei

CSV-Dateien sind von großem Nutzen, um Daten organisiert zu speichern. Sie können mit Hilfe verschiedener Programmiersprachen Daten in eine CSV-Datei schreiben und aus einer CSV-Datei lesen.

In C# haben wir verschiedene Methoden, um eine CSV-Datei zu lesen und die Daten in eine CSV-Datei zu schreiben. Dieser Artikel konzentriert sich auf die verschiedenen Methoden zum Schreiben von Daten in eine CSV-Datei.

C# Programm zum Schreiben von Daten in eine CSV-Datei mit Methoden der Klasse CsvHelper

In C# haben wir eine Bibliothek namens CsvHelper zum Lesen und Schreiben von CSV-Dateien. Diese Bibliothek wird nicht standardmäßig zur Verfügung gestellt. Vielmehr müssen wir sie herunterladen. Sie stellt Methoden wie GetRecords und WriteRecords zum Lesen und Schreiben einer CSV-Datei zur Verfügung. Dies ist eine effiziente Bibliothek, um CSV-Dateien einfach zu lesen und zu schreiben.

Der folgende Beispielcode zeigt ein Programm, das eine CSV-Datei erzeugt und Daten in diese Datei schreibt.

Beispiel-Code:

using System;
using System.IO;
using System.Text;
using CsvHelper;

namespace CsvExample {
  public class Project {
    public string PersonName { get; set; }
    public string Title { get; set; }
  }

  public class Program {
    static void Main(string[] args) {
      var data = new[] { new Project { CustomerName = "Olivia", Title = "Mother" },
                         new Project { CustomerName = "Lili", Title = "Elder Sister" } };

      using (var mem = new MemoryStream()) using (var writer = new StreamWriter(mem)) using (
          var csvWriter = new CsvWriter(writer)) {
        csvWriter.Configuration.Delimiter = ";";
        csvWriter.Configuration.HasHeaderRecord = true;
        csvWriter.Configuration.AutoMap<Project>();

        csvWriter.WriteHeader<Project>();
        csvWriter.WriteRecords(data);

        writer.Flush();
        var result = Encoding.UTF8.GetString(mem.ToArray());
        Console.WriteLine(result);
      }
    }
  }
}

Ausgabe:

PersonName;Title
Olivia;Mother
Lili;Elder Sister

C# Programm zum Schreiben von Daten in eine CSV-Datei mit der Methode WriteAllText()

Die Methode WriteAllText() erstellt eine Datei, schreibt Daten in die Datei und schließt die Datei dann. Wenn die Datei bereits existiert, schreibt sie die Daten in die Datei neu.

Die korrekte Syntax zur Verwendung dieser Methode lautet wie folgt:

WriteAllText(StringPath, StringContents);

Beispiel-Code:

using System;
using System.IO;
using System.Text;

namespace CsvExample {

  public class Program {
    static void Main(string[] args) {
      string strFilePath = @"D:\New folder\Data.csv";
      string strSeperator = ",";
      StringBuilder sbOutput = new StringBuilder();

      int[][] inaOutput = new int[][] { new int[] { 1000, 2000, 3000, 4000, 5000 },
                                        new int[] { 6000, 7000, 8000, 9000, 10000 },
                                        new int[] { 11000, 12000, 13000, 14000, 15000 } };

      int ilength = inaOutput.GetLength(0);
      for (int i = 0; i & amp; lt; ilength; i++)
        sbOutput.AppendLine(string.Join(strSeperator, inaOutput[i]));

      // Create and write the csv file
      File.WriteAllText(strFilePath, sbOutput.ToString());

      // To append more lines to the csv file
      File.AppendAllText(strFilePath, sbOutput.ToString());
    }
  }
}

Ausgabe:

//CSV file created in the given directory

Es gibt mehrere Ausnahmen wie ArgumentException, ArgumentNullException, PathTooLongException, DirectoryNotFoundException, IOException und UnauthorizedAccessException. Diese Ausnahmen könnten mit einem Versuch-Fang-Block behandelt werden.

Verwandter Artikel - Csharp CSV