Java如何使用Apache POI创建Excel文档?

本示例演示如何使用Apache POI库创建excel文档。在此示例中,我们创建了一个简单的文档,其中包含两张纸,它们的第一个单元格上都有一个值。

package org.nhooo.example.poi;

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

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

public class CreateExcelDemo {
    public static void main(String[] args) {
        // 创建HSSFWorkbook的实例。
        HSSFWorkbook workbook = new HSSFWorkbook();

        // 在excel文档中创建两个工作表,并将其命名为First Sheet和
        // 第二张。
        HSSFSheet firstSheet = workbook.createSheet("FIRST SHEET");
        HSSFSheet secondSheet = workbook.createSheet("SECOND SHEET");

        // 通过创建代表以下内容的HSSFRow来操纵冷杉板材
        //Excel工作表中的单行,第一行从0索引开始。后
        // 创建该行后,我们将在该行的第一个单元格中创建一个HSSFCell
        // 并使用HSSFRichTextString实例设置单元格值
        // 包含单词FIRST SHEET。
        HSSFRow rowA = firstSheet.createRow(0);
        HSSFCell cellA = rowA.createCell(0);
        cellA.setCellValue(new HSSFRichTextString("FIRST SHEET"));

        HSSFRow rowB = secondSheet.createRow(0);
        HSSFCell cellB = rowB.createCell(0);
        cellB.setCellValue(new HSSFRichTextString("SECOND SHEET"));

        // 要将工作簿写到文件中,我们需要创建一个输出
        // 将工作簿内容写入的流。
        try (FileOutputStream fos = 
                 new FileOutputStream(new File("CreateExcelDemo.xls"))) {
            workbook.write(fos);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Maven依赖

<!-- https://search.maven.org/remotecontent?filepath=org/apache/poi/poi/4.1.0/poi-4.1.0.jar -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.0</version>
</dependency>

Maven中央