【发布时间】:2012-03-24 01:06:14
【问题描述】:
我有一个关于如何将 xmldoc 保存为 word 文件的问题。我想打开 word 文件,使用 xmldocument 类对 undelying xml 结构进行一些操作,然后将其重新保存回 word 文件。这就是我目前正在做的事情:
using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(@"E:\HelloWorld.docx", true))
{
MainDocumentPart mainPart = wordDoc.MainDocumentPart;
var xmlDoc = new XmlDocument();
using (Stream partStream = part.GetStream())
using (XmlReader partXmlReader = XmlReader.Create(partStream))
xmlDoc.Load(partXmlReader);
//xml node manipulation here
xmlDoc.Save(@"E:\HelloWorld.docx");
}
但是,这会导致文档损坏。执行此功能的正确方法是什么?
【问题讨论】:
-
您能否评论一下损坏的内容和您的期望:HelloWorld.Test 将是一个 XML 文件,而不是 docx,XML 无效 XML 或 HelloWorld.docx 是否损坏或您期望 HelloWorld.Test做word文档?
-
抱歉,这是一个错字。我正在尝试打开一个 docx,使用 xmldoc 提取 xml 结构,对其进行修改,然后将其写回另一个 docx 文件。所以 HelloWorld 应该是一个 docx