XWPFDocument中XWPFParagraph的使用

背景

老师让我们统计一个班的调查问卷
XWPFDocument中XWPFParagraph的使用_第1张图片
XWPFDocument中XWPFParagraph的使用_第2张图片
XWPFDocument中XWPFParagraph的使用_第3张图片
每个问卷夹都有这么多Word文档,每个Word文档都有调查问卷的题目,也不知道老师为啥要这么做。然后让我们统计调查问卷的回答情况。
每个人回答就用高亮的颜色标识一下。所以我想到用XWPFDocument来帮助我完成统计。话不多说,开干。

依赖

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-collections4</artifactId>
    <version>4.1</version>
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-compress</artifactId>
    <version>1.18</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml-schemas</artifactId>
    <version>4.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.xmlbeans</groupId>
    <artifactId>xmlbeans</artifactId>
    <version>3.1.0</version>
</dependency>

导入以上jar,由于poi版4之后加入了高亮的属性,所以版本用4以上的高亮

代码

		FileInputStream file = new FileInputStream(fileName);
        XWPFDocument doc = new XWPFDocument(file);
        List<XWPFParagraph> paragraphs = doc.getParagraphs();//获取整个Word的包含页眉或页脚文本的段落
        for (XWPFParagraph xw:paragraphs){
            String text = xw.getText();//获取段落文本
            List<XWPFRun> runs = xw.getRuns();//文本的公共属性集
            for (XWPFRun run:runs){
               if(run.getTextHightlightColor()!=STHighlightColor.YELLOW)
                 color = run.getTextHightlightColor();
                 System.out.print(color);
            }
        }

完整代码https://github.com/1059997476/Word-

参考资料

http://poi.apache.org/apidocs/dev/org/apache/poi/xwpf/usermodel/XWPFDocument.html
https://www.cnblogs.com/unruly/p/7479518.html

你可能感兴趣的:(XWPFDocument中XWPFParagraph的使用)