我正在使用 oledb
从 Excel 文件中读取数据。
DataTable sheet1 = new DataTable();
string excelCS = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";" + "Extended Properties=\"Excel 12.0 Xml;HDR=NO;TypeGuessRows=0;ImportMixedTypes=Text\"";
using (OleDbConnection connection = new OleDbConnection(excelCS))
{
connection.Open();
string selectSql = @"SELECT * FROM [Sheet1$]";
using (OleDbDataAdapter adapter = new OleDbDataAdapter(selectSql, connection))
{
adapter.Fill(sheet1);
}
connection.Close();
}
但是文件中有一些单元格存在问题。
对于某些单元格,我得到的是空值而不是文本。我试图在这些单元格中放入其他文本,但并没有起作用 - 我仍然得到空字符串。 但是,删除该列并再次插入后,我的应用程序就能够获得正确的单元格值。重要的是,不是所有单元格都存在此问题。
这是与单元格格式之类的问题吗?由另一个系统生成此Excel文件,因此我无法手动修改它。
是否有人有任何建议,怎么回事,我该怎么做?
IMEX=1
吗? - Siddharth Rout