none
Manejo de CSV con C# y DataTable RRS feed

  • Pregunta

  • Tengo un form que contiene un DataGridView el cual cargo con un DataTable que se llena con un StreamReader el codigo es el siguiente:

    public frmCSV()
    {
    InitializeComponent();
    try
    {
    List<string[]> testParse =
    parseCSV(AppPath + "\\" + "products.csv");
    DataTable newTable = new DataTable();

    foreach (string column in testParse[0])
    {
    newTable.Columns.Add(column);
    }

    foreach (string[] row in testParse)
    {
    newTable.Rows.Add(row);
    }
    dataGrid1.DataSource = newTable;
    }
    catch { MessageBox.Show("No Existe Ningun archivo CSV capturado."); }
    }

    public List<string[]> parseCSV(string path)
    {
    List<string[]> parsedData = new List<string[]>();

    using (StreamReader readFile = new StreamReader(path))
    {
    string line;
    string[] row;

    while ((line = readFile.ReadLine()) != null)
    {
    row = line.Split(','); 
    parsedData.Add(row);
    }
    }

    return parsedData;
    }

    El Problema que tengo esque ese CSV esta estrcuturado de tal forma que los datos de texto estan entre comillas "" , cuando lo cargo en el datagridview este conserva esas comillas, ya que debe ser asi para evitar que existan comas en los campos de texto, mi pregunta es como puedo eliminar esas comillas. Gracias de antemano.

    jueves, 16 de febrero de 2012 0:06

Respuestas

Todas las respuestas

  • porque usas un steem reader para trabajr el csv, porque no usas ado.net

    Tip: export to CSV using ADO.NET

    aunque recomendaria uses

    FileHelpers

    esta libreria para tratar archivo va de maravilla

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta CDFlik jueves, 16 de febrero de 2012 5:00
    jueves, 16 de febrero de 2012 1:11
  • porque usas un steem reader para trabajr el csv, porque no usas ado.net

    Tip: export to CSV using ADO.NET

    aunque recomendaria uses

    FileHelpers

    esta libreria para tratar archivo va de maravilla

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Primero que nada uso el Stream Reader porque buscando informacion sobre como tratar con estos archivos ya que es la primera vez que los utilizo y me los pidieron de un dia a otro, este codigo fue lo primero que encontre, ademas de una libreria llamada "csvreader" pero creo que omiti mencionar que este mismo codigo tambien lo debo implementar en Windows Mobile, asi que antes de dar por buena tu respuesta me gustaria saber si puedo usar esta libreria o manejar el CSV con OLEDB ya que veo que ambas son excelentes alternativas, estoy leyendo ambas ligas y se ve excelentemente explicado, solo que en este momento no estoy en mi trabajo y no puedo checar si estas 2 opciones funcionarian tambien en Windows Mobile ya que por ejemplo la Libreria CSVREADER no funcionaba usando el Compact Framework 3.5 que es donde estoy desarrollando la aplicacion.

    Saludos y muchas gracias por tan excelente material es bueno conocer esta informacion que podria servirme para otras aplicaciones.

    jueves, 16 de febrero de 2012 3:06