当前位置:首页 > Java

java 如何创建.xlsx

2026-03-25 19:30:13Java

创建 .xlsx 文件的方法

使用 Apache POI 库可以轻松创建 Excel 文件(.xlsx 格式)。Apache POI 提供了对 Microsoft Office 格式文件的读写支持。

添加依赖

在 Maven 项目中添加以下依赖:

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

基本创建步骤

创建工作簿和工作表:

import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFSheet;

// 创建新的工作簿
XSSFWorkbook workbook = new XSSFWorkbook();

// 创建工作表
XSSFSheet sheet = workbook.createSheet("Sheet1");

写入数据

创建行和单元格并写入数据:

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFCell;

// 创建行(从0开始)
XSSFRow row = sheet.createRow(0);

// 创建单元格并设置值(从0开始)
XSSFCell cell = row.createCell(0);
cell.setCellValue("Hello");

row.createCell(1).setCellValue("World");

保存文件

将工作簿写入文件:

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

try (FileOutputStream outputStream = new FileOutputStream("example.xlsx")) {
    workbook.write(outputStream);
} catch (IOException e) {
    e.printStackTrace();
} finally {
    workbook.close();
}

完整示例代码

import org.apache.poi.xssf.usermodel.*;
import java.io.FileOutputStream;
import java.io.IOException;

public class ExcelCreator {
    public static void main(String[] args) {
        XSSFWorkbook workbook = new XSSFWorkbook();
        XSSFSheet sheet = workbook.createSheet("Data");

        // 创建标题行
        XSSFRow headerRow = sheet.createRow(0);
        headerRow.createCell(0).setCellValue("ID");
        headerRow.createCell(1).setCellValue("Name");
        headerRow.createCell(2).setCellValue("Age");

        // 创建数据行
        XSSFRow dataRow = sheet.createRow(1);
        dataRow.createCell(0).setCellValue(1);
        dataRow.createCell(1).setCellValue("John Doe");
        dataRow.createCell(2).setCellValue(30);

        // 保存文件
        try (FileOutputStream outputStream = new FileOutputStream("output.xlsx")) {
            workbook.write(outputStream);
            System.out.println("Excel文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                workbook.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

高级功能

设置单元格样式:

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

// 创建字体
Font font = workbook.createFont();
font.setBold(true);
font.setColor(IndexedColors.RED.getIndex());

// 创建单元格样式
CellStyle style = workbook.createCellStyle();
style.setFont(font);

// 应用样式
cell.setCellStyle(style);

设置列宽:

java 如何创建.xlsx

sheet.setColumnWidth(0, 5000);  // 设置第一列宽度为5000单位

标签: javaxlsx
分享给朋友:

相关文章

java如何创建线程

java如何创建线程

创建线程的方法 在Java中,创建线程主要有两种方式:继承Thread类和实现Runnable接口。以下是具体实现方法: 继承Thread类 通过继承Thread类并重写run()方法可以创建线程。…

java如何创建对象

java如何创建对象

创建对象的基本方法 在Java中,创建对象主要通过new关键字调用构造函数完成。基本语法为: ClassName objectName = new ClassName(); 例如创建String对象…

java如何导包

java如何导包

导入包的方法 在Java中,导入包(package)可以通过import语句实现,用于引入其他类或包中的功能。以下是几种常见的导包方式: 导入单个类 import java.util.ArrayL…

java如何处理高并发

java如何处理高并发

Java处理高并发的方法 使用多线程和线程池 Java的java.util.concurrent包提供了线程池(如ThreadPoolExecutor)和并发工具类(如CountDownLatch、C…

java如何遍历map

java如何遍历map

遍历Map的几种方法 在Java中,遍历Map有多种方式,可以根据需求选择合适的方法。以下是常见的几种遍历方式: 使用entrySet遍历 通过entrySet()方法获取键值对的集合,可以同时访问…

java如何导入jar包

java如何导入jar包

在Eclipse中导入JAR包 右键项目 -> 选择"Properties" -> 左侧导航选择"Java Build Path" -> 切换到"Libraries"标签 ->…