Web系统下Office文档的处理 之OpenXML基础
上篇文章 http://www.cnblogs.com/2018/archive/2011/03/21/1989088.html ,看到目前不少人都遇到Web系统上office文档的处理,因此本文继续把这方面以前遇到的一些内容整理一下以飨读者。
首先Office文档的处理格式选择是选择openxml格式,这应该不是个问题,因为及时有的项目使用的是office 2003等这么老的软件通过安装MS官方的兼容包也可以打开和浏览openxml文档。而openxml是个开放的标准,因此基于这个处理有很多的候选方案和资源【相比以前的二进制私有格式是好了很多很多】。
【文档如果是以前的老格式,可以参考上篇文章的MS官方批量转换工具快速的转换为Openxml格式】
本文简要的介绍如何快速的入门和使用openxml格式
基础和参考资料
规范
Open+XML+Explained.pdf清楚的介绍了openxml的规范,有例子,而且内容不长,适合了解(129页)
例子文档
Open+XML+Explained.pdf 附书的文档
http://openxmldeveloper.org/articles/1970.aspx
Workshop: 各种例子文档
http://openxmldeveloper.org/articles/DeveloperWorkshopContent.aspx
http://openxmldeveloper.org/articles/OpenXMLsamples.aspx提供了符合openxml格式的系列文档,对于实现基于openxml的方案的测试非常有用
OpenXML/ODF Translator (sf.net) 这个项目中有测试文档,涉及了规范的几乎各个方面
其他的参考资料
关于Openxml涉及的很多的方面的知识,非常值得推荐
http://blogs.msdn.com/b/ericwhite/archive/2008/10/20/eric-white-s-blog-s-table-of-contents.aspx
Microsoft Word 2010 Developer Building Blocks WORD 2010的版本各种开发目录导引
http://social.msdn.microsoft.com/forums/en-US/oxmlsdk/社区,可以看到问题的讨论和解决方案,并能提交问题由社区支持
www.codeplex.com MS的官方开源站点,各种类型的代码
Open XML SDK
架构Open XML SDK 2_0 Architecture
http://blogs.msdn.com/b/brian_jones/archive/2008/10/14/open-xml-sdk-2-0-architecture.aspx
http://openxmldeveloper.org/articles/8264.aspx
SDK和工具包
OpenXMLSDKTool.msi
OpenXMLSDKv2.msi
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=78bea298-a3f9-44cf-bde0-b4f30dc986df
工具Open XML SDK\V2.0\tool\OpenXmlSdkTool.exe,如下图:
可以查看文档的结构和API参考,最酷的是能够看到代码如何实现,这样编写程序时可以参考
通过这个工具可以分析openxml文档的结构,同时还可以看到代码生成文档的方法
参考如上的资料和工具,读取和生成openxml文档应该没有太大的问题了。