尝试使用EPPlus PLease读取.xls文件时出错帮助我 [英] Error when trying to read an .xls file using EPPlus PLease help me
本文介绍了尝试使用EPPlus PLease读取.xls文件时出错帮助我的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
public DataTable getDataTableFromExcel(string path)
{
using (var pck = new OfficeOpenXml.ExcelPackage())
{
using (var stream = File.OpenRead(path))
{
pck.Load(stream);
}
var ws = pck.Workbook.Worksheets.First();
DataTable tbl = new DataTable();
bool hasHeader = true;
foreach (var firstRowCell in ws.Cells[1, 1, 1, ws.Dimension.End.Column])
{
tbl.Columns.Add(hasHeader ? firstRowCell.Text : string.Format("Column {0}", firstRowCell.Start.Column));
}
var startRow = hasHeader ? 2 : 1;
for (var rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
{
var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column];
var row = tbl.NewRow();
foreach (var cell in wsRow)
{
row[cell.Start.Column - 1] = cell.Text;
}
tbl.Rows.Add(row);
}
return tbl;
}
}
推荐答案
如评论中所述,EPPlus不支持.xls
文件。它只支持较新的.xlsx
文件。
打开一个旧的.xls
文件,您需要使用不同的库 - 例如, NPOI [ ^ ]。
As mentioned in the comments, EPPlus does not support.xls
files. It only supports the newer.xlsx
files.
To open an old.xls
file, you'll need to use a different library - for example, NPOI[^].
这篇关于尝试使用EPPlus PLease读取.xls文件时出错帮助我的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文