Novacode确定Word样式是否为表格

时间:2015-12-07 17:18:32

标签: c# docx novacode-docx

我需要解析几个.docx文件并发现使用Novacode DocX使这个任务变得更容易。我需要解析这些文档的方式来自于自上而下的方法,当我遇到某个“对象”(单词表,图片,图形,等式......)时,会做一些特定的事情。

我写了以下代码。给定一个文档,该代码将按顺序浏览所有段落实例并打印出样式。我注意到其中一些样式(在这种情况下为“Normal”)实际上与表对象相关联。

using Novacode;
using System;

namespace resrap
{
    internal class Program
    {
        private static void Main( string[] args )
        {
            using ( DocX document = DocX.Load( args[0] ) )
            {
                foreach ( var paraType in document.Paragraphs )
                {
                    Console.WriteLine( paraType.StyleName );
                }
            }
        }
    }
}

我有办法确定某个段落是否与Word表格相关联吗?我知道如何获取文档中的所有表,但因为我需要按顺序解析文档(后来按解释顺序放入解析后的内容)使用这样的东西没有用,因为我不知道这些在哪里表实际上位于文档中。

using Novacode;
using System;

namespace resrap
{
    internal class Program
    {
        private static void Main( string[] args )
        {
            using ( DocX document = DocX.Load( args[0] ) )
            {
                for ( int index = 0; index < document.Tables.Count; index++ )
                {
                    var table = document.Tables[index];
                    // do something with table
                }
            }
        }
    }
}

我不确定我的方法(第一个代码示例)是否可以做到这一点,但我会在等待任何可能的指导/提示时继续解决这个问题。

1 个答案:

答案 0 :(得分:0)

我明白了。我必须查看 ParentContainer 属性以检查单元格值。