入门案例

最基本的 word 创建例子。

引入 jar

基于 maven 引入 jar

  [xml]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!-- poi Excel、Word操作--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.7</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml-schemas</artifactId> <version>3.9</version> </dependency>

简单例子

  [java]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/* * Copyright (c) 2019. houbinbin Inc. * idoc All rights reserved. */ package com.github.houbb.idoc.test.poi; import org.apache.poi.xwpf.usermodel.Borders; import org.apache.poi.xwpf.usermodel.ParagraphAlignment; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.usermodel.XWPFParagraph; import org.apache.poi.xwpf.usermodel.XWPFRun; import org.apache.poi.xwpf.usermodel.XWPFTable; import org.junit.Test; import java.io.FileOutputStream; import java.io.IOException; /** * <p> </p> * <pre> Created: 2019/2/14 7:16 AM </pre> * <pre> Project: idoc </pre> * @author houbinbin */ public class WordGenTest { @Test public void genTest() throws IOException { final String path = "/Users/houbinbin/code/_github/idoc/idoc-core/src/main/resources/idoc/word/gen-idoc-word-all.docx"; XWPFDocument doc = new XWPFDocument();// 创建Word文件 // 1. 创建段落 XWPFParagraph p = doc.createParagraph();// 新建一个段落 p.setAlignment(ParagraphAlignment.CENTER);// 设置段落的对齐方式 p.setBorderBottom(Borders.DOUBLE);//设置下边框 p.setBorderTop(Borders.DOUBLE);//设置上边框 p.setBorderRight(Borders.DOUBLE);//设置右边框 p.setBorderLeft(Borders.DOUBLE);//设置左边框 //1.1 标题 XWPFRun r = p.createRun();//创建段落文本 r.setText("POI创建的Word段落文本"); r.setBold(true);//设置为粗体 // 1.2 正文段落 p = doc.createParagraph();// 新建一个段落 r = p.createRun(); r.setText("POI读写Excel功能强大、操作简单。"); //2. 创建一个表格 XWPFTable table= doc.createTable(3, 3); table.getRow(0).getCell(0).setText("表格1"); table.getRow(1).getCell(1).setText("表格2"); table.getRow(2).getCell(2).setText("表格3"); FileOutputStream out = new FileOutputStream(path); doc.write(out); out.close(); } }

这里演示了 word 文档中最基础的段落纯文本的创建,以及表格的创建。

参考资料

Java中用Apache POI生成excel和word文档

Apache POI自动生成Word文档(带目录)

poi-tl

Java 对Word文件的生成(基于Apache POI)

使用poi生成word文档(最全例子)

生成 word 详解