【发布时间】:2016-10-02 14:42:03
【问题描述】:
我有一堆 word 文档 (docx),其中详细说明了测试用例名称作为段落标题以及后续表格中的测试步骤以及其他一些信息。
我需要使用 Apache POI 从表中提取测试用例名称(来自段落)和测试步骤(来自表)。
示例单词内容为
Section 1: Index
Section 2: Some description
A. Paragraph 1
B. Table 1
C. Paragraph 2
D. Paragraph 3
E. Table 2
Section 3: test cases ( The title "test cases" is constant, so I can look for it in the doc)
A. Paragraph 4 (First test case)
B. Table 3 (Test steps table immediately after the para 4)
C. Paragraph 5 (Second test case)
B. Table 4 (Test steps table immediately after the para 5)
Apache POI 提供 API 来提供段落和表格列表,但我无法阅读段落(测试用例)并立即查找该段落后面的表格。
我尝试使用 XWPFWordExtractor(读取所有文本)、bodyElementIterator(遍历所有正文元素),但它们中的大多数都给出了getParagraphText() 方法,该方法给出了段落列表[para1, para2, para3, para4, para5] 和getTables() 方法给出了文档中的所有表格作为列表[table1, table2, table3, table4]。
我如何遍历所有段落,停在标题“测试用例”之后的段落(第 4 段),然后查找紧随第 4 段之后的表格(表 3)。然后对第 5 段和表 4 重复此操作。
这是我试过的gist link(代码),它给出了段落列表和表格列表,但不是我可以跟踪的顺序。
非常感谢任何帮助。
【问题讨论】:
标签: java apache-poi docx