我有一个应用程序,用户上传 excel(2007 或更高版本)文件,该文件被解析,内容存储在数据库中。我正在使用EPPlus从 Excel 中读取内容。这是代码片段
foreach (var worksheet in package.Workbook.Worksheets)
{
for (int i = worksheet.Dimension.Start.Row + 1; i <= worksheet.Dimension.End.Row; i++)
{
DataRow newRow = dt.NewRow();
for (int j = worksheet.Dimension.Start.Column; j <= worksheet.Dimension.End.Column; j++)
{
newRow[j - 1] = worksheet.Cells[i, j].Value;
}
dt.Rows.Add(newRow);
}
}
当 j 的值达到 11 时,出现以下异常Cannot find column 10。但我确实检查了文件,它实际上有列索引 10。我放了一个断点,观察第 9 列的值,它与第 10 列之前的值完全相同。
所以有人可以帮助我吗?真正的问题是什么?
我检查了 API,EPPlus lib 实际上有一个索引属性 Cells,它接受列的索引作为第二个参数。