代码之家  ›  专栏  ›  技术社区  ›  Chris B. Behrens

通过样式块解析打开的xml文档

  •  2
  • Chris B. Behrens  · 技术社区  · 14 年前

    我正在使用docx文档,我需要根据使用“heading 1”样式的标题将文档解析为多个部分。如果我有这样一个文档(标记是伪代码):

    <doc>
    <title style>Doc Title</title style>
    <heading1>First Section</heading1>
    ...
    <heading2>Second Section</heading2>
    ...
    <heading3>Third Section</heading3>
    ...
    </doc>
    

    我想把它变成一个医生 第一部分是第一部分之前的内容。我认为,一旦您熟悉了open xml,这可能非常简单,但我不是。

    短暂性脑缺血发作

    1 回复  |  直到 14 年前
        1
  •  2
  •   Chris B. Behrens    14 年前

    哇…对这个问题一整天都没什么看法。好吧,我想出来了,我想我会分享财富。我不能直接共享代码,但它只是三个嵌套循环,一个循环遍历段落,然后运行段落,然后运行样式。其中每一个的xpath是:

    .//w:p
    ./w:pPr
    ./w:pStyle
    

    一旦你找到一个你喜欢的样式的跑步,你会弹出一个级别来获得第一次跑步,它将包含样式文本。从那以后,它只是比较科学101的东西。我认为真正的突破是甚至不尝试去搅乱开放的xml sdk(除了io打包的东西),直接进入xml操作。