example c# csv

csvhelper example c#



¿Hay bibliotecas de lectores/escritores CSV en C#? (5)

Hay docenas.

FileHelpers es uno de los más comunes.

Debo decir que encuentro Filehelpers restrictivo en algunos escenarios, y en su lugar uso The Fast CSV Reader . Según mi experiencia, si no conoce el formato de su archivo CSV o importa la asignación hasta el tiempo de ejecución, esta es la mejor biblioteca para usar.

¿Hay bibliotecas de lectores / escritores CSV en C #?


Hay un par de opciones, justo en el marco mismo.

Una de las más fáciles es hacer referencia a Microsoft.VisualBasic, luego usar TextFieldParser . Es un lector CSV completamente funcional en el marco central.

Otra buena alternativa es usar datasets para leer archivos CSV .


Pruebe CsvHelper . Es tan fácil de usar como FastCsvReader y también lo es. He estado muy contento con FastCsvReader en el pasado, pero necesitaba algo que también lo haga, y no estaba contento con FileHelpers.

Leyendo:

var csv = new CsvReader( stream ); var myCustomTypeList = csv.GetRecords<MyCustomType>();

Escritura:

var csv = new CsvWriter( stream ); csv.WriteRecords( myCustomTypeList );

Divulgación completa: soy el autor de esta biblioteca.


Sí, aunque supongo que en realidad estás pidiendo detalles.

Pruebe FileHelpers


Sebastien Lorion tiene un gran lector de CSV en CodeProject llamado A Fast CSV Reader . Probablemente uno de los mejores para C # y es gratis.

En cuanto a escribir, simplemente use StreamWriter .

Aquí hay un código repetitivo para escribir un DataGridView en un archivo:

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(); } }; } }