初始化字符串的格式不符合从索引 129 开始的规范

Format of the initialization string does not conform to specification starting at index 129

我是 C# 新手,我认为这是语法错误或连接错误

这是它突出显示为错误的代码。

   private void btnLoadExcel_Click(object sender, EventArgs e)
   {
       String PathConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + textBox1.Text + ";Extended Properties='Excel    8,0;HDR=yes;    \";";
       OleDbConnection conn = new OleDbConnection(PathConn);

       OleDbDataAdapter myDataAdaptor = new OleDbDataAdapter("select 8 form [" + TBSheet.Text + "$]", conn);
       DataTable dt = new DataTable();

       myDataAdaptor.Fill(dt);

       dataGridView1.DataSource = dt;
   }

我建议您调试代码并查看位置 129 处的字符 - 错误将在那里。

就是说,看起来您在 "Extended Properties" 部分混用了单引号和双引号 - 试试这样的操作:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + textBox1.Text + ";Extended Properties=\"Excel 8.0;HDR=yes\";";

(我也已将“8,0”更改为“8.0”,如 connectionstrings.com 中所示,尽管两者都可能有效)