侧边栏壁纸
博主头像
可乐呢o3o博主等级

少些比较,多些谦虚。

  • 累计撰写 53 篇文章
  • 累计创建 67 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Java使用apachePOI操作word文档

liuker
2023-06-01 / 0 评论 / 0 点赞 / 39 阅读 / 3566 字

Java

Maven

maven配置源,添加repository节点。

<repositories>
    <repository>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </repository>
</repositories>

添加依赖,添加dependencie节点。

<dependencies>
    <dependency>
        <groupId>com.deepoove</groupId>
        <artifactId>poi-tl</artifactId>
        <version>1.12.1</version>
    </dependency>
</dependencies>

语法

Java反射机制:遍历类属性,根据类属性名取value

Class clz=某个类.class;
Field[] fields=clz.getDeclaredFields(); 
for (Field field : fields) {
   System.out.println(field.getName());
}
Class<PierConfig> clz = PierConfig.class;
Class<? extends PierConfig> cls = Pier.getClass();
Field[] fields = clz.getDeclaredFields();
for (Field field : fields) {
    Field tmpField = cls.getDeclaredField(field.getName());
    tmpField.setAccessible(true);
    String name = field.getName();
    Object value = tmpField.get(Pier);
    logger.info(name + ": " + value);
    replace_map.put(name, value);
}

POI API

段落,run相关

// 创建段落
XWPFDocument.createParagraph();
// 右对齐
XWPFParagraph.setAlignment(ParagraphAlignment.RIGHT);
// 行间距
XWPFParagraph.setSpacingBetween(1.5);


// 创建新run,设置文本,添加换行
XWPFRun = XWPFParagraph.createRun();
XWPFRun.setText("123");
XWPFRun.addCarriageReturn();
// 样式设置 字面意思,很好理解。
XWPFRun.setColor("000000");
XWPFRun.setBold(true);
XWPFRun.setFontFamily("宋体");
XWPFRun.setFontSize(22);
XWPFRun.setUnderline(UnderlinePatterns.SINGLE);





序号列表

public static void add_numbering_list(XWPFDocument document, List<String> text_list) {
    CTAbstractNum cTAbstractNum = CTAbstractNum.Factory.newInstance();
    cTAbstractNum.setAbstractNumId(BigInteger.valueOf(0));
    CTLvl cTLvl = cTAbstractNum.addNewLvl();
    cTLvl.setIlvl(BigInteger.valueOf(0));
    cTLvl.addNewNumFmt().setVal(STNumberFormat.DECIMAL);
    cTLvl.addNewLvlText().setVal("%1.");
    cTLvl.addNewStart().setVal(BigInteger.valueOf(1));
    XWPFAbstractNum abstractNum = new XWPFAbstractNum(cTAbstractNum);
    XWPFNumbering numbering = document.createNumbering();
    BigInteger abstractNumID = numbering.addAbstractNum(abstractNum);
    BigInteger numID = numbering.addNum(abstractNumID);
    for (String string : text_list) {
        XWPFParagraph paragraph = document.createParagraph();
        paragraph.setNumID(numID);
        XWPFRun run=paragraph.createRun();
        run.setText(string);
    }
}
0

评论区