当前位置:首页 > Java

java如何poi

2026-03-19 23:53:11Java

Java 使用 Apache POI 操作 Excel

Apache POI 是一个用于读写 Microsoft Office 格式文件的 Java 库,支持 Excel、Word 和 PowerPoint 等文件格式。以下是使用 POI 操作 Excel 的基本方法。

添加依赖

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

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

创建 Excel 文件

使用 XSSFWorkbook(.xlsx 格式)或 HSSFWorkbook(.xls 格式)创建工作簿:

java如何poi

Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Sheet1");
Row row = sheet.createRow(0);
Cell cell = row.createCell(0);
cell.setCellValue("Hello, POI!");

写入文件

将工作簿写入文件:

try (FileOutputStream outputStream = new FileOutputStream("example.xlsx")) {
    workbook.write(outputStream);
}

读取 Excel 文件

加载 Excel 文件并读取内容:

java如何poi

Workbook workbook = new XSSFWorkbook(new FileInputStream("example.xlsx"));
Sheet sheet = workbook.getSheetAt(0);
Row row = sheet.getRow(0);
Cell cell = row.getCell(0);
System.out.println(cell.getStringCellValue());

设置单元格样式

可以设置字体、颜色等样式:

CellStyle style = workbook.createCellStyle();
Font font = workbook.createFont();
font.setBold(true);
font.setColor(IndexedColors.RED.getIndex());
style.setFont(font);
cell.setCellStyle(style);

处理公式

支持在单元格中设置公式:

cell.setCellFormula("SUM(A1:B1)");
FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();
evaluator.evaluateFormulaCell(cell);

合并单元格

合并单元格区域:

sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 1));

注意事项

  • 处理大数据量时,使用 SXSSFWorkbook 以减少内存占用。
  • 关闭资源时使用 try-with-resources 确保文件流正确释放。
  • 不同 Excel 版本(.xls 和 .xlsx)需要使用不同的实现类(HSSFWorkbookXSSFWorkbook)。

标签: javapoi
分享给朋友:

相关文章

java如何学习

java如何学习

学习Java的有效方法 理解基础概念 Java是一门面向对象的编程语言,掌握基础概念如变量、数据类型、运算符、控制语句(if-else、循环)是必要的。面向对象的核心概念包括类、对象、继承、多态和封装…

java如何获取当前时间

java如何获取当前时间

获取当前时间的方法 在Java中,可以通过多种方式获取当前时间。以下是几种常见的方法: 使用 java.util.Date Date currentDate = new Date(); Syste…

vue实现java登录注册

vue实现java登录注册

实现 Vue 与 Java 后端的登录注册功能 前端 Vue 部分 安装必要的依赖(如 axios 用于 HTTP 请求): npm install axios 创建登录表单组件(Login.vue…

java js实现转盘抽奖

java js实现转盘抽奖

实现转盘抽奖的步骤 HTML结构 创建转盘抽奖的基本HTML结构,包括转盘区域和抽奖按钮。 <div id="wheel"> <canvas id="wheelCanv…

如何查看java版本

如何查看java版本

查看Java版本的命令行方法 在终端或命令提示符中运行以下命令,可以快速查看已安装的Java版本: java -version 输出示例: java version "17.0.1" 20…

java如何创建线程

java如何创建线程

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