如何使用打开的XML SDK获取Word文档的所有合并字段 [英] How to get all merge fields of word document using open xml sdk

查看:68
本文介绍了如何使用打开的XML SDK获取Word文档的所有合并字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是初学者,可以打开xml sdk.我正在尝试找出文档的所有合并字段.

I am beginner to open xml sdk. I am trying to find out all merge fields of document.

但是我没有得到页眉和页脚合并字段.

But I am not getting the headers and footers merge fields.

任何人都可以提出可行的解决方案吗?

Can any one suggest a working solution?

我正在尝试类似的事情-

I am trying some thing like this -

foreach (FieldCode field in docGenerated.MainDocumentPart.RootElement.Descendants<FieldCode>())
                    {

                        String fieldText = field.Text;
                        if (fieldText.StartsWith(" MERGEFIELD"))
                        {
                            Int32 endMerge = fieldText.IndexOf("\\");

                            Int32 fieldNameLength = fieldText.Length - endMerge;

                            String fieldName = fieldText.Substring(11, endMerge - 11);

                            fieldName = fieldName.Trim();
                         }
}

推荐答案

您必须分别遍历页眉和页脚,请参见以下代码:

You have to loop through header and footer separately, see the following code:

foreach (var header in doc.MainDocumentPart.HeaderParts)
            foreach (var cc in header.RootElement.Descendants<FieldCode>())
                //DO CODE
foreach (var footer in doc.MainDocumentPart.FooterParts)
           foreach (var cc in footer.RootElement.Descendants<FieldCode>())
                //DO CODE

这篇关于如何使用打开的XML SDK获取Word文档的所有合并字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆