我的连接字符串是:Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\\;Extended Properties='text;H
DR=No;FMT=TabDelimited'这个文本文件中共有四列,用tab隔开:aaa bbb ccc ddd我用DataSet读取:OleDbDataAdapter ODDA  = new OleDbDataAdapter("SELECT * FROM 11.txt",ODC);DataSet ds = new DataSet();但是读完的结果是只有一列而不是我想要的4列,请问这是怎么回事?
还有请问.net下读取文本文档都什么好的方法?多谢了

解决方案 »

  1.   

    这个是使用odbc方式读取的,你看看可不可以,或者参考这个改成oledb方式的
    public DataSet ConnectCSV(FileInfo filetable)
    {
    DataSet ds = new DataSet();
    try

    conn_excel_str = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=" + filetable.DirectoryName.ToString();
    string sql_select; 
    OdbcConnection obj_oledb_con;
    OdbcDataAdapter obj_oledb_da;
    //Create connection to CSV file
    obj_oledb_con = new OdbcConnection(conn_excel_str);
    //Open the connection 
    obj_oledb_con.Open();
    //Fetch records from CSV
    //sql_select = "select * from ["+ filetable +"]";
    sql_select = "select * from ["+ filetable.Name.ToString() +"]";
    obj_oledb_da = new OdbcDataAdapter(sql_select,obj_oledb_con);
    //Fill dataset with the records from CSV file
    obj_oledb_da.Fill(ds);
    //Close Connection to CSV file
    obj_oledb_con.Close();

    catch(Exception e) //Error
    {}
    return ds;
    }