使用Java POI生成Word文档的步骤

1. 引入POI依赖

在开始之前,我们需要在项目中引入POI的依赖。在Maven项目中,可以在pom.xml文件中添加以下依赖:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
</dependency>

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.2</version>
</dependency>

2. 创建Word文档

首先,我们需要创建一个Word文档对象。可以使用XWPFDocument类来创建一个新的空白文档。

XWPFDocument document = new XWPFDocument();

3. 添加段落和文本

接下来,我们可以向文档中添加段落和文本内容。段落可以通过使用XWPFParagraph类来创建,而文本可以通过使用XWPFRun类来创建。

XWPFParagraph paragraph = document.createParagraph();
XWPFRun run = paragraph.createRun();
run.setText("Hello, World!");

4. 添加表格

如果我们需要在文档中添加表格,可以使用XWPFTable类来创建一个新的表格对象。

XWPFTable table = document.createTable(3, 3);

以上代码将创建一个3行3列的表格。

5. 设置表格内容

通过获取表格的行和单元格对象,我们可以对表格进行设置和填充。

XWPFTableRow row = table.getRow(0);
row.getCell(0).setText("Cell 1");
row.getCell(1).setText("Cell 2");
row.getCell(2).setText("Cell 3");

以上代码将在第一行的三个单元格中填充文本。

6. 保存文档

最后一步是将文档保存到磁盘上的文件中。可以使用FileOutputStream类来实现。

FileOutputStream out = new FileOutputStream("output.docx");
document.write(out);
out.close();

以上代码将生成一个名为output.docx的Word文档。

整体流程图

flowchart TD
    A[创建Word文档对象] --> B[添加段落和文本]
    B --> C[添加表格]
    C --> D[设置表格内容]
    D --> E[保存文档]

完整代码示例

import org.apache.poi.xwpf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;

public class WordGenerator {

    public static void main(String[] args) throws IOException {
        XWPFDocument document = new XWPFDocument();

        XWPFParagraph paragraph = document.createParagraph();
        XWPFRun run = paragraph.createRun();
        run.setText("Hello, World!");

        XWPFTable table = document.createTable(3, 3);
        XWPFTableRow row = table.getRow(0);
        row.getCell(0).setText("Cell 1");
        row.getCell(1).setText("Cell 2");
        row.getCell(2).setText("Cell 3");

        FileOutputStream out = new FileOutputStream("output.docx");
        document.write(out);
        out.close();
    }
}

以上是一个简单的示例代码,展示了如何使用Java POI生成一个包含文本和表格的Word文档。通过按照上述步骤,你可以根据需求进一步扩展和定制生成的Word文档。