我正在使用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