当前位置:首页 > Java

java如何excel

2026-03-19 13:02:10Java

读取Excel文件

使用Apache POI库读取Excel文件。确保在项目中添加POI依赖。对于Maven项目,在pom.xml中添加以下依赖:

<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文件的代码示例:

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.io.IOException;

public class ExcelReader {
    public static void main(String[] args) {
        try (FileInputStream fis = new FileInputStream("example.xlsx");
             Workbook workbook = new XSSFWorkbook(fis)) {
            Sheet sheet = workbook.getSheetAt(0);
            for (Row row : sheet) {
                for (Cell cell : row) {
                    System.out.print(cell.toString() + "\t");
                }
                System.out.println();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

写入Excel文件

使用Apache POI库创建和写入Excel文件。以下代码示例展示了如何创建一个新的Excel文件并写入数据:

java如何excel

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

public class ExcelWriter {
    public static void main(String[] args) {
        try (Workbook workbook = new XSSFWorkbook();
             FileOutputStream fos = new FileOutputStream("output.xlsx")) {
            Sheet sheet = workbook.createSheet("Sheet1");
            Row row = sheet.createRow(0);
            Cell cell = row.createCell(0);
            cell.setCellValue("Hello, Excel!");
            workbook.write(fos);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

处理Excel公式

在Excel单元格中设置公式并计算其结果。以下代码示例展示了如何设置公式并获取计算结果:

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

public class ExcelFormula {
    public static void main(String[] args) {
        try (Workbook workbook = new XSSFWorkbook();
             FileOutputStream fos = new FileOutputStream("formula.xlsx")) {
            Sheet sheet = workbook.createSheet("Sheet1");
            Row row = sheet.createRow(0);
            row.createCell(0).setCellValue(10);
            row.createCell(1).setCellValue(20);
            Cell cell = row.createCell(2);
            cell.setCellFormula("A1+B1");
            workbook.getCreationHelper().createFormulaEvaluator().evaluateAll();
            workbook.write(fos);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用EasyExcel处理大数据量

对于大数据量的Excel文件,可以使用EasyExcel库,它提供了更高效的内存管理。在Maven项目中添加EasyExcel依赖:

java如何excel

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>easyexcel</artifactId>
    <version>3.1.5</version>
</dependency>

读取大数据量Excel文件的代码示例:

import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.listener.ReadListener;

public class EasyExcelReader {
    public static void main(String[] args) {
        String fileName = "large_file.xlsx";
        EasyExcel.read(fileName, new ReadListener<Object>() {
            @Override
            public void invoke(Object data, AnalysisContext context) {
                System.out.println(data);
            }
            @Override
            public void doAfterAllAnalysed(AnalysisContext context) {
                System.out.println("Read complete");
            }
        }).sheet().doRead();
    }
}

导出Excel文件

使用EasyExcel导出数据到Excel文件。以下代码示例展示了如何将数据导出为Excel文件:

import com.alibaba.excel.EasyExcel;
import java.util.ArrayList;
import java.util.List;

public class EasyExcelWriter {
    public static void main(String[] args) {
        String fileName = "export.xlsx";
        List<List<String>> data = new ArrayList<>();
        List<String> row = new ArrayList<>();
        row.add("Name");
        row.add("Age");
        data.add(row);
        row = new ArrayList<>();
        row.add("Alice");
        row.add("25");
        data.add(row);
        EasyExcel.write(fileName).sheet("Sheet1").doWrite(data);
    }
}

标签: javaexcel
分享给朋友:

相关文章

java如何react

java如何react

在Java中使用React 要在Java项目中集成React,通常需要将React前端与Java后端结合使用。以下是几种常见的方法: 使用Spring Boot作为后端 Spring Boot是一个…

如何编写java

如何编写java

编写Java程序的基本步骤 安装Java开发工具包(JDK),确保系统环境变量配置正确。可以从Oracle官网下载最新版本的JDK并进行安装。 选择一个合适的集成开发环境(IDE),如Eclipse…

如何编译java

如何编译java

安装JDK 确保系统已安装Java Development Kit(JDK)。可通过命令行输入 javac -version 和 java -version 验证是否安装成功。若未安装,需从Oracl…

java如何连接mysql数据库

java如何连接mysql数据库

连接 MySQL 数据库的步骤 添加 MySQL 驱动依赖 在项目中引入 MySQL 的 JDBC 驱动。如果使用 Maven,可以在 pom.xml 中添加以下依赖: <dependency…

如何精通java

如何精通java

理解Java核心概念 Java的基础知识包括数据类型、变量、运算符、控制流语句(如循环和条件判断)、数组以及面向对象编程(OOP)的核心概念(类、对象、继承、多态、封装)。熟练掌握这些内容是后续学习的…

php实现excel导出excel

php实现excel导出excel

PHPExcel 库实现 Excel 导出 PHPExcel 是一个流行的 PHP 库,用于处理 Excel 文件。以下是使用 PHPExcel 导出 Excel 的基本步骤。 安装 PHPExce…