【问题标题】:Format of the initialization string does not conform to specification starting at index 128初始化字符串的格式不符合从索引 128 开始的规范
【发布时间】:2013-09-05 12:24:37
【问题描述】:

我的是 C# windows 应用程序。 当我在本地机器上运行此应用程序时,它会出现以下错误:- “初始化字符串的格式不符合从索引 128 开始的规范”。

try
{
    string path = System.IO.Path.GetFullPath("E:\\09-2013\\SalesRep\\Openleads.xlsx");
    if (Path.GetExtension(path) == ".xls")
    {
        oledbConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; 
        Data Source=" + path + "Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\"");
    }
    else if (Path.GetExtension(path) == ".xlsx")
    {
        oledbConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; 
        Data Source=" + path + "Extended Properties='Excel 12.0;HDR=YES;IMEX=1;';");
    }

    oledbConn.Open();
    OleDbCommand cmd = new OleDbCommand(); ;
    OleDbDataAdapter oleda = new OleDbDataAdapter();
    DataSet ds = new DataSet();

    cmd.Connection = oledbConn;
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = "SELECT * FROM [Raw Data$]";
    oleda = new OleDbDataAdapter(cmd);
    oleda.Fill(ds, "dsSlno");
    grvData.DataSource = ds.Tables["dsSlno"].DefaultView;
    oleda = new OleDbDataAdapter(cmd);
    oleda.Fill(ds);

    grvData.DataSource = ds.Tables[1].DefaultView;
}
catch (Exception ex)
{

}
finally
{
    oledbConn.Close();
}

【问题讨论】:

  • 它在哪里引发了这个错误?
  • @RowlandShaw:在执行以下行时,出现此错误。 oledbConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + path + "Extended Properties='Excel 12.0;HDR=YES;IMEX=1;';");现在我已将此行更改为 oledbConn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + path + "Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\"") ;即使经过小的修改也得到了相同的结果。已更改为“初始化字符串的格式不符合从索引 121 开始的规范”。

标签: c# excel winapp


【解决方案1】:

您的路径需要在其前面有一个 @ 符号来转义您的反斜杠:

在“E:”之后有一个空终止字符 (\0),当它连接到您的连接字符串时会导致您的问题。

改变这个:

string path = System.IO.Path.GetFullPath("E:\09-2013\SalesRep\Openleads.xlsx");

到这里:

string path = System.IO.Path.GetFullPath(@"E:\09-2013\SalesRep\Openleads.xlsx");

你应该没事的。

【讨论】:

    猜你喜欢
    • 2012-01-04
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多