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

totolitos

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

Recommended Posts

totolitos

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

Share this post


Link to post
Share on other sites
Cybernavigator

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


Melhores cumprimentos,João Lopes***Esta mensagem foi escrita ao abrigo do novo Acordo Ortográfico***

Share this post


Link to post
Share on other sites
Betovsky

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.


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
jpaulino

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

Share this post


Link to post
Share on other sites
esquima

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.