OpenXml SpreadsheetDocument.Open(...)获得异常 - 主要部分缺失

Shi*_*hir 9 .net c# excel xls openxml-sdk

我有一个带标题的xlsx doc,它位于我的项目路径中.我想使用OpenXML插入数据,但在打开文件时出现异常:

using (SpreadsheetDocument myDoc = SpreadsheetDocument.Open(MyxlsFileName, true))
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)

例外:

"指定的包无效.主要部分缺失"

异常的含义是什么,有什么不对?

预先感谢!

hel*_*elb 5

您无法使用 OpenXml 打开XLS文件。您必须使用 Microsoft Excel 2007 或更高版本将 Excel 文件另存为XLSX文件。(假设您在这里使用正确的文件扩展名......)

带有 XLS 扩展名的文件采用专有的二进制格式,无法使用 OpenXML 进行处理。

所以你有两个选择:

  1. 在处理 XLS 文件之前手动将其转换为 XLSX。
  2. 查找用于处理 XLS 文件的库或 API。

  • 我尝试使用 xlsx 文件,但得到了相同的异常。 (2认同)

tom*_*imk 5

虽然这可能非常明显,但它发生在我身上:另一种可能触发相同错误的情况是当你得到错误的文件名时.所以检查你确实有正确的路径,对我来说,我最终得到了一个新创建的文件(拼写错误),但仍然得到了相同的错误.