Antworten:
Versuchen Sie es mit CsvHelper . Es ist so einfach zu bedienen wie FastCsvReader und schreibt auch. Ich war in der Vergangenheit sehr zufrieden mit FastCsvReader, aber ich brauchte etwas, das auch schreibt, und war mit FileHelpers nicht zufrieden.
Lesen:
var csv = new CsvReader( stream );
var myCustomTypeList = csv.GetRecords<MyCustomType>();
Schreiben:
var csv = new CsvWriter( stream );
csv.WriteRecords( myCustomTypeList );
Vollständige Offenlegung: Ich bin der Autor dieser Bibliothek.
WriteField
. Überprüfen Sie die Dokumente hier joshclose.github.io/CsvHelper
CsvHelper
. Vielleicht könnte es an dieser Stelle einige alternative Lesestrategien bieten? Ich habe meine ursprüngliche Bemerkung übrigens gelöscht, da sie jetzt irrelevant ist :-)
Es gibt einige Optionen, direkt im Framework.
Am einfachsten ist es, auf Microsoft.VisualBasic zu verweisen und dann TextFieldParser zu verwenden . Es ist ein voll funktionsfähiger CSV-Reader im Kernframework.
Eine weitere gute Alternative ist die Verwendung von Datasets zum Lesen von CSV-Dateien .
Sebastien Lorion hat einen großartigen CSV
Leser auf CodeProject namens A Fast CSV Reader . Wahrscheinlich eines der besten für C # und es ist kostenlos.
Verwenden Sie zum Schreiben einfach StreamWriter
.
Hier ist ein Code zum Schreiben DataGridView
einer Datei in eine Datei:
private void exportDGVToCSV(string filename)
{
if (dataGridView1.Columns.Count != 0)
{
using (Stream stream = File.OpenWrite(filename))
{
stream.SetLength(0);
using (StreamWriter writer = new StreamWriter(stream))
{
// loop through each row of our DataGridView
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string line = string.Join(",", row.Cells.Select(x => $"{x}"));
writer.WriteLine(line);
}
writer.Flush();
}
};
}
}
Ja - obwohl ich davon ausgehe, dass Sie tatsächlich nach Einzelheiten fragen?
Versuchen Sie FileHelpers
Es gibt Dutzende.
http://www.filehelpers.net/ ist eine der häufigsten.
Ich sollte sagen, dass ich Filehelpers in einigen Szenarien als einschränkend empfinde und stattdessen den Fast CSV Reader verwende . Wenn Sie nach meiner Erfahrung das Format Ihrer CSV-Datei oder die Importzuordnung erst zur Laufzeit kennen, ist dies die bessere Bibliothek.
.net csv library
. Obwohl anekdotisch, ist meine Behauptung, dass diese Frage in den letzten sechs Jahren mehr als 22000 Mal gestellt wurde.