以编程方式访问.docx文件的XML?

时间:2017-07-18 10:20:27

标签: c# .net

如果您使用.docx文件,将其重命名为.zip并解压缩,则可以查看其.xml个文件。我正在构建一个程序来以编程方式检查这些XML属性(现有的API似乎不够,因为我们公司正在使用将自定义XML附加到文件的第三方程序,并且该程序没有API)。

是否有一种干净的方法来访问此XML而无需以编程方式将文件副本保存为.zip文件,打开它们,仅取出XML然后删除其余文件?

2 个答案:

答案 0 :(得分:1)

您是否尝试过Open XML SDK for Office

允许您访问.docx文件中的xml文件。

答案 1 :(得分:1)

使用openxml sdk获取所有xml元素

WordprocessingDocument document = WordprocessingDocument.Open(this.FilePath, true); MainDocumentPart mainPart = document.MainDocumentPart; List<OpenXmlElement> ParagraphElements = new List<OpenXmlElement>(); foreach (var i in mainPart.Document.ChildElements.FirstOrDefault().ChildElements) { ParagraphElements.Add(i); }

这是您的完整解决方案, 从ParagraphElements可以检索所有XML元素。 这是访问其中存在的XML元素的简便方法。