Heim >Backend-Entwicklung >C++ >Wie kann ein Überschreiben beim Schreiben von Daten in eine CSV-Datei in C# verhindert werden?

Wie kann ein Überschreiben beim Schreiben von Daten in eine CSV-Datei in C# verhindert werden?

Barbara Streisand
Barbara StreisandOriginal
2025-01-23 03:16:07206Durchsuche

How to Prevent Overwriting When Writing Data to a CSV File in C#?

CSV-Dateien in C# schreiben: Das Überschreibproblem lösen

Beim Schreiben einer CSV-Datei in C# besteht ein häufiges Problem darin, dass nur die letzte Zeile geschrieben wird. Dies liegt daran, dass jede Iteration der Schleife den vorhandenen Inhalt in der Datei überschreibt.

Um dieses Problem zu lösen, muss jede Zeile an die CSV-Datei angehängt werden, anstatt sie zu überschreiben. Erstellen Sie dazu ein StringBuilder-Objekt und hängen Sie in einer Schleife neue Zeilen daran an. Nach Abschluss der Schleife wird der gesamte Inhalt von StringBuilder in eine CSV-Datei geschrieben.

Das Folgende ist ein Beispiel einer korrigierten Funktion:

<code class="language-csharp">var csv = new StringBuilder();
string first = reader[0].ToString();
string second = image.ToString();
csv.AppendLine(string.Format("{0},{1}", first, second));
File.WriteAllText(filePath, csv.ToString());</code>

Alternativ können Sie die Methode File.AppendAllText verwenden:

<code class="language-csharp">string newLine = string.Format("{0},{1}", first, second);
File.AppendAllText(filePath, newLine);</code>

Dadurch werden neue Zeilen an die vorhandene Datei angehängt, ohne deren Inhalt zu überschreiben.

Eine andere Möglichkeit, eine CSV-Datei zu schreiben, ist die Verwendung der CsvHelper-Bibliothek. Diese Bibliothek vereinfacht diesen Prozess, indem sie Typkonvertierungen, String-Escapes und andere mit CSV-Dateien verbundene Komplexitäten übernimmt.

Das obige ist der detaillierte Inhalt vonWie kann ein Überschreiben beim Schreiben von Daten in eine CSV-Datei in C# verhindert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn