gpt4 book ai didi

c# - 如何使用 EPPlus 读取 excel

转载 作者:行者123 更新时间:2023-11-30 14:27:15 36 4
gpt4 key购买 nike

使用.net 4.5

我正在尝试使用 EPPlus (v4.0.4) 读取 .xls/.xlsx 文件,但出现错误。 SO 对相同的错误有疑问,但没有一个与我的问题相关或解决我的问题。

protected void Page_Load(object sender, EventArgs e)
{
GetDataTableFromExcel(@"D:\test.xlsx");
}

private DataTable GetDataTableFromExcel(string path, bool hasHeader = true)
{
using (var pck = new OfficeOpenXml.ExcelPackage())
{
using (var stream = File.OpenRead(path))
{
pck.Load(stream);
}
var ws = pck.Workbook.Worksheets[1];
DataTable tbl = new DataTable();
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 (int rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
{
var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column];
DataRow row = tbl.Rows.Add();
foreach (var cell in wsRow)
{
row[cell.Start.Column - 1] = cell.Text;
}
}
return tbl;
}
}

错误发生在pck.Load(stream);

A disk error occurred during a write operation. (Exception from HRESULT: 0x8003001D (STG_E_WRITEFAULT)

最佳答案

如何使用 EPPlus 读取 excel 文件的简单示例:

引用:http://sforsuresh.in/reading-excel-file-using-epplus-package/

public void readXLS(string FilePath)
{
FileInfo existingFile = new FileInfo(FilePath);
using (ExcelPackage package = new ExcelPackage(existingFile))
{
//get the first worksheet in the workbook
ExcelWorksheet worksheet = package.Workbook.Worksheets[1];
int colCount = worksheet.Dimension.End.Column; //get Column Count
int rowCount = worksheet.Dimension.End.Row; //get row count
for (int row = 1; row <= rowCount; row++)
{
for (int col = 1; col <= colCount; col++)
{
Console.WriteLine(" Row:" + row + " column:" + col + " Value:" + worksheet.Cells[row, col].Value.ToString().Trim());
}
}
}
}

关于c# - 如何使用 EPPlus 读取 excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33368676/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com