【发布时间】:2014-07-28 22:20:49
【问题描述】:
我正在为 Microsoft Word (C#) 制作一个插件,我想获取存储文档的所有 XMLNodes(因为它是一个 DOCX 文件)。
Word 的 API 有一个 SelectNodes 函数,它采用 xpath,但是当我尝试不同的参数时,我得到了 null。我正在尝试选择 all 节点(目前),因此我认为这不是命名空间问题(但我可能是错的)。以下是相关代码:
using Word = Microsoft.Office.Interop.Word;
Word.XMLNodes docNodes = Doc.SelectNodes("//*");
System.Diagnostics.Debug.WriteLine("We have node count: " + docNodes.Count.ToString());
for (int i = 0; i < docNodes.Count; i++)
{
Word.XMLNode node = docNodes[i];
System.Diagnostics.Debug.WriteLine(node.get_XML());
}
当我尝试使用 docNodes 时失败,因为对 Doc.SelectNodes 的调用返回 null。我在一个 Word 文档上运行它——实际上是通过在 Word 中单击“新文档”然后在几个段落中输入一些文本来创建的。
我在此处或 MSDN 上找不到关于如何让此函数产生结果的好的文档或示例。
【问题讨论】: