我正在通过以下代码读取C#中的excel文件:
DataTable retVal = new DataTable();
try
{
DataTable excelDataTable = new DataTable();
OleDbCommand command = new OleDbCommand(string.Format("SELECT {0} FROM [{1}]",
columnNames,
_sheetName), _fileConnection);
//CommandText is like: "select col1,col2,col3,val1,val2,val3 from Excel2017w$"
OleDbDataAdapter da = new OleDbDataAdapter(command);
da.Fill(retVal);
}
catch(Exception ex) {...}
这很好,除了一种情况:值1和值2的值仅对于行1变为空白,因为最终用户出于某种原因将单元格的格式设置为“文本”(可能是复制粘贴问题)其他设置为“常规”。一些最终用户不知道如何更改单元格的格式类型。这就是为什么我在寻找一种方法来获取数值,而单元格格式无关紧要。
任何帮助或建议,将不胜感激。
Provider=Microsoft.ACE.OLEDB.12.0