OpenXML:使用OpenXML SDK在两个文档字段之间读取文本

时间:2010-10-08 09:20:27

标签: c# .net xml openxml openxml-sdk

我刚开始使用OpenXML SDK编程,我已经过度尝试查找和读取两个文档字段之间的文本,但从未真正成功过。网上有大量的样本和教程,介绍了几乎所有你能想到的OpenXML SDK,从设置水印到合并邮件,但不仅仅是处理文档字段。

我的word文档看起来像这样:

{ Field1 } data { Field2 }

以及我想要做的是阅读Field1Field2之间的数据。

我成功地找到了我需要的所有字段:

var qryFieldCode = (from p in procDoc.MainDocumentPart.Document.Body.Descendants()
                    where p.GetType() == typeof(FieldCode)
                    select p).ToList();

但是,如何阅读我找到的那些字段之间的文字呢?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

找到您的第一个字段(与上面类似),然后获得.ElementsAfterSelf.TakeWhile,直到p.GetType()不是typeof(FieldCode)。然后只需获取该查询的.Value即可获得您的文字。如果您在两个字段之间有表格之类的东西,这将不是一个很好的解决方案,但对于上面的示例,它将起作用。