我正在使用ACE.OLEDB从C#应用程序读取excel文件。 一切都工作得很好,直到今天,我发现其中一个列名称被错误地读取。ACE.OLEDB提供程序错误地读取某些列名
下面是我在Excel中已经有了文件
这里就是我有我的调试器
基本点( “”)是由于某种原因被替换为散列(“#”)。
该代码很简单,大部分工作正常,不认为问题存在,但为了清晰起见,将在此显示。
DataTable data = new DataTable();
string strAccessConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path.FullName + ";Extended Properties=\"Excel 12.0\";\"HDR=YES\";\"IMEX=1;\"";
OleDbConnection myAccessConn = new OleDbConnection(strAccessConn);
string strAccessSelect = "select * from [" + SheetName + "];";
OleDbCommand myAccessCommand = new OleDbCommand(strAccessSelect, myAccessConn);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
myDataAdapter.Fill(0, maxRows, data);
有没有我做错了或者它是OLEDB中的错误?
这不是一个错误,它是一个功能。只要做String.Replace就可以了。 – Taosique
认真吗?你能详细说明吗?我正在阅读excel中的大文件,我可能有很多有效的'。'符号,我不能盲目地用'#'代替它们。 – taralex