• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

totolitos

Ler csv, separar campos pela "," e inserir numa tabela

5 mensagens neste tópico

Agradecia que me indicassem um código que le-se um csv, o formata-se por "," e o inseri-se numa tabela

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em que parte tens dificuldade? mete o código que ja tens feito

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E porque não fazeres uma ligação ODBC ao ficheiro csv, trabalhando com ele como se trata-se de uma BD.

Assim a lógica do sw, seria como passar dados de uma tabela para outra.

Poderá não ser a mais eficiente, mas deve ser a mais simples.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Usa um StreamReader

http://msdn.microsoft.com/en-us/library/system.io.streamreader.readline.aspx

using System;
using System.IO;

class Test 
{
    
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";
        try 
        {

            using (StreamReader sr = new StreamReader(path)) 
            {
                while (sr.Peek() >= 0) 
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }
        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E porque não fazeres uma ligação ODBC ao ficheiro csv, trabalhando com ele como se trata-se de uma BD.

Assim a lógica do sw, seria como passar dados de uma tabela para outra.

Poderá não ser a mais eficiente, mas deve ser a mais simples.

Aproveitando o que o Betovsky te disse..fiz te um exemplo, n sei se e isso que queres

       // connection string para conectares ao teu ficheiro csv
string strConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\; Extended Properties=\"Text;HDR=YES;\"";

// open connection
OleDbConnection oCon = new OleDbConnection(strConString);
oCon.Open();

// preencher data set
string strSql = "SELECT * FROM xpto.csv"; //csvfile tem de estar no c: para este exemplo
OleDbDataAdapter oDA = new OleDbDataAdapter(strSql, oCon);
DataSet oData = new DataSet();
oDA.Fill(oData, "TESTE");

GridView1.DataSource = oData;
GridView1.DataBind();

oCon.Close();

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora