我正在尝试使用从网站获得的此代码块从excel文件导入数据。
public static DataTable ToDataTable(this ExcelPackage package)
{
ExcelWorksheet workSheet = package.Workbook.Worksheets.First();
DataTable table = new DataTable();
foreach (var firstRowCell in workSheet.Cells[1, 1, 1, workSheet.Dimension.End.Column])
{
table.Columns.Add(firstRowCell.Text);
}
var temp = workSheet.Dimension.End.Row;
for (var rowNumber = 2; rowNumber <= workSheet.Dimension.End.Row; rowNumber++)
{
var row = workSheet.Cells[rowNumber, 1, rowNumber, workSheet.Dimension.End.Column];
var newRow = table.NewRow();
foreach (var cell in row)
{
newRow[cell.Start.Column - 1] = cell.Text;
}
table.Rows.Add(newRow);
}
return table;
}
假设我在excel文件中有10行数据,后来我删除了4行数据并保存了该文件。现在,当我导入这个excel文件时,我得到的行数为10,但是应该为6。因为只有6行数据。为什么会这样?
var temp = workSheet.Dimension.End.Row;
如何在代码中解决此问题?请帮忙。谢谢!