2

我发现各种元素非常混乱。几乎每个元素似乎都有一个与之关联的“部分”,我不确定它们是如何粘合在一起的。

工作簿 WorkbookPart 工作表 WorkSheetPart

我也对 DocumentFormat.OpenXml.Packaging 与 DocumentFormat.OpenXml.Spreadsheet 库感到困惑。

有没有一本像样的书或指南可以引导我了解基础知识?我到处寻找,但我没有找到太多。

4

2 回答 2

5

如果您还没有看到这些,Microsoft 的 SDK 官方网站会很有帮助...

http://msdn.microsoft.com/en-us/library/bb448854.aspx

http://msdn.microsoft.com/en-us/library/bb448854%28v=office.14%29.aspx

现在,如果您查看了类库参考,您会发现那里提供的文档不是很丰富。没有示例,只有继承层次结构、命名空间、程序集等基础知识。例如......

http://msdn.microsoft.com/en-us/library/documentformat.openxml.packaging.workbookpart.aspx

我个人最幸运的是使用 JetBrains dotPeek 之类的工具查看实际代码。当然,Open XML SDK 生产力工具是无价的。如果这些不存在,任何使用 Open XML 的开发都会更加乏味。如果您不使用生产力工具,这是必须的。基本练习如下:1) 打开 Excel 或 Word,2) 生成您希望看到的文件,3) 保存到磁盘,4) 在生产力工具中打开,5) 反映代码。应该注意的是,生成的代码可能非常复杂。通常有很多非必需项,在少数情况下,生成的代码并不完全符合您的预期(例如,使用他们的代码在 Word 中嵌入电子表格会生成与 .xlsx 相对的 .bin)。但在大多数情况下,这就是要走的路。

以下是我发现的其他几个网站也很有帮助。

http://msdn.microsoft.com/en-us/library/gg278316%28v=office.14%29.aspx

http://msdn.microsoft.com/en-us/library/cc850837%28v=office.14%29.aspx

http://openxmldeveloper.org/

您可能还会发现 Wouter van Vugt 的电子书很有帮助。这是您将找到的最接近有关该主题的实际书籍的内容。

http://openxmldeveloper.org/blog/b/openxmldeveloper/archive/2007/08/13/1970.aspx

当然,最引人入胜的可能是实际的 ECMA 规范:

http://www.ecma-international.org/publications/standards/Ecma-376.htm

还有几个开源项目封装了 Open XML API,试图简化事情。例如:

http://closedxml.codeplex.com/

希望这会有所帮助。

于 2013-05-24T18:47:10.227 回答
0

感谢您的详细回答。长话短说,我找到了https://epplus.codeplex.com/,它为操作 XLSX 文件提供了一个简单的框架。它更容易使用,我强烈推荐它而不是原生 SDK 例程。

于 2013-05-25T15:48:42.537 回答