Java如何在Excel文档中设置单元格样式的格式?

本示例演示如何在excel文档中使用HSSFCellStyle和HSSFFont格式化单元格样式。使用此类,我们可以定义单元格边框,前景色和背景色。我们还可以定义用于显示单元格值的字体。

package org.nhooo.example.poi;

import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.apache.poi.ss.usermodel.FillPatternType;

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

public class ExcelCellFormat {
    public static void main(String[] args) {
        // 创建工作簿和工作表的实例
        HSSFWorkbook workbook = new HSSFWorkbook();
        HSSFSheet sheet = workbook.createSheet();

        // 创建一个HSSFCellStyle实例,该实例将用于格式化
        //细胞。在这里,我们定义单元格的顶部和底部边框,
        // 定义背景色。
        HSSFCellStyle style = workbook.createCellStyle();
        style.setBorderTop(BorderStyle.DOUBLE);
        style.setBorderBottom(BorderStyle.THIN);
        style.setFillForegroundColor(
            HSSFColor.HSSFColorPredefined.GREY_25_PERCENT.getIndex());
        style.setFillPattern(FillPatternType.SOLID_FOREGROUND);

        // 我们还定义了将用于显示字体的字体
        //单元格的数据。我们将字体设置为ARIAL,大小为20pt,
        // 使其变粗,并赋予蓝色作为颜色。
        HSSFFont font = workbook.createFont();
        font.setFontName(HSSFFont.FONT_ARIAL);
        font.setFontHeightInPoints((short) 20);
        font.setBold(true);
        font.setColor(HSSFColor.HSSFColorPredefined.BLUE.getIndex());
        style.setFont(font);

        // 我们创建一个简单的单元格,设置其值并应用单元格样式。
        HSSFRow row = sheet.createRow(1);
        HSSFCell cell = row.createCell(1);
        cell.setCellValue(new HSSFRichTextString("Hi there... It's me again!"));
        cell.setCellStyle(style);
        sheet.autoSizeColumn((short) 1);

        // 最后,我们将工作簿写到一个excel文件中。
        try (FileOutputStream fos =
                 new FileOutputStream(new File("ExcelDemo.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中央