使用NPOI读取Excel文件时无效操作异常

本文关键字:无效 操作 异常 文件 NPOI 读取 Excel 使用 | 更新日期: 2023-09-27 18:33:13

>我有一段简单的代码

public JsonResult ParseExcel(HttpPostedFileBase file)
{
    var uploadedFileContent = file.InputStream;
    if (POIXMLDocument.HasOOXMLHeader(uploadedFileContent))
    {
        //xlsx
        var workbook = new XSSFWorkbook(uploadedFileContent);
        var sheet = workbook.GetSheetAt(0);
    }
return new JsonResult{};
}

因此,然后我尝试使用NPOI使用上传的Excel文件创建工作簿,但出现错误:异常详细信息:消息:单元格 G33 的超链接引用关系 rId5,但这并不存在!

我发现发生这种情况是因为 G33 单元格有一个超链接,如下所示:xxx@yyy.com'。它最后有一个引号。如果我删除单引号,一切都按预期工作。除了编辑Excel文件并删除单引号之外,还有其他方法可以解决此问题吗?

我尝试使用WorkbookFactory.Create并将第二个参数指定为ImportOption.TextOnly。我尝试先创建OPCPackage对象,然后将其作为参数传递。但是,我收到相同的消息。

使用NPOI读取Excel文件时无效操作异常

由于将文件传递给XSSFWorkbook构造函数,损坏了整个东西,我没有找到任何其他解决方案,然后切换到不同的库。