我正在将ths xls和xlsx转换为c#中的数据表。我已经使用了这段代码。
public DataTable ReadDataExcel(string filepath)
{
FileStream stream = File.Open(filepath, FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
excelReader.IsFirstRowAsColumnNames = true;
DataSet result = excelReader.AsDataSet();
DataTable dt = new DataTable();
dt = result.Tables[0];
return dt;
}
Run Code Online (Sandbox Code Playgroud)
如果是xls,则可以正常工作。每当我使用xlsx时,它都无法正常工作。其给出“对象引用”错误。
是否还有其他方法可以将xls和xlsx都转换为数据表。我对使用“ Microsoft.Jet.OLEDB”不感兴趣。
这就是答案。
对于导入 xlsx,
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
Run Code Online (Sandbox Code Playgroud)
对于导入 xls,
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8533 次 |
| 最近记录: |