【问题标题】:Reading CSV into using OLEDB使用 OLEDB 读取 CSV
【发布时间】:2013-08-12 10:37:44
【问题描述】:

我收到错误“找不到可安装的 ISAM” 当我尝试使用 OLEDB 连接字符串读取 csv 文件时。

请帮忙

我的代码是:

       if (File .Exists(openFileDialog1 .FileName ))
       {
        ConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data          Source="+openFileDialog1.FileName +";Extended Properties=text;HDR=Yes;FMT=Delimited");
        Con = new OleDbConnection(ConnectionString);
        string query = "Select * From [Sheet1$]";
        Con.Open();
        DataAdapter = new OleDbDataAdapter(query, Con);
        dt = new DataTable(); 
        DataAdapter.Fill(dt);

        dataGridView1.DataSource = dt;
       }

【问题讨论】:

    标签: c#


    【解决方案1】:

    “当连接字符串的语法不正确时也会产生这个错误。” - msdn

    当我试图复制你的连接字符串时,那里似乎有很多空格。

     ConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+openFileDialog1.FileName +";Extended Properties=text;HDR=Yes;FMT=Delimited");
    

    如果这似乎不能解决您的问题,我建议您查看this

    【讨论】:

    • 感谢你们的支持。我将连接字符串更改为 "string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=No;IMEX=1\";",文件名)”,它的工作。但我需要知道一件事:我的表名必须是选项卡名称 - 所以如果我不知道用户将拥有的选项卡名称,我该如何放置我的选择语句?提前致谢
    【解决方案2】:

    您可能正在运行 64 位。 Oledb.4.0 仅适用于 32 位应用程序

    【讨论】:

      猜你喜欢
      • 2016-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多