我在加载字词时遇到了一些麻烦。我试图创建一个新的文档格式,并有它的工作。格式只是现有docx的编码。换句话说,我可以去掉编码并留下一个有效的word文档。word interop加载项的新文档格式
保存:
眼下,当用户希望将文档保存在新的格式,我提示保存原稿,然后从磁盘读取原始,在新的格式保存副本。这会在文件系统上留下2个文件(foo.docx和foo.myformat)。
理想情况下,我想拦截DocumentBeforeSave事件中的文档,将文档作为字节数组获取,将其转换为内存,并保存一个副本。我似乎无法找到获取字节数组的方法。
开幕:
现在当用户选择要打开的文件存储在我的格式,我做一个临时副本(TMP \ blah.docx),然后只需打开与Application.Documents文档。开(TMP \ blah.docx ...)。
我宁愿反而从内存流创建文档,所以我可以避免创建临时文件。是否有可能从内存中创建一个新的Word.Document?
任何方向将不胜感激。非常感谢。
您可能需要移出Interop进行内存中编辑,而改用Open XML SDK。这里有一篇很好的文章:http://blogs.msdn.com/b/ericwhite/archive/2008/12/10/working-with-in-memory-open-xml-documents.aspx – 2010-06-21 18:18:16