当前位置: 首页 > news >正文

使用Java操作Excel

1.引入依赖
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>3.1.3</version>
        </dependency>
2.编写实体类,用注解映射Excel表格属性
@Data
public class Excel {
    @ExcelProperty("用户名")
    @ColumnWidth(20)
    private String name;
    @ExcelProperty("性别")
    @ColumnWidth(20)
    private String sex;
}
3.编写Java代码向Excel表格写入文件
  • 定义Excel路径
  String fileName = "用户信息.xlsx";
  • 准备好要写入Excel文件里的内容
    private static List<Excel> data() {
        // 准备一些测试数据
        List<Excel> list = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            Excel excel = new Excel();
            excel.setName("张三" + i);
            excel.setSex("男");
            list.add(excel);
        }
        return list;
    }
  • 在测试类里调用EasyExce里的的静态方法传入文件路径,实体类,要写入的数据执行写入数据操作即可完成Excel内容写入工作
4.编写Java代码读取Excel里的数据
  • 创建监听器类来处理每一行的数据
public class ExcelListener extends AnalysisEventListener<Excel> {
    private List<Excel> dataList = new ArrayList<>();

    @Override
    public void invoke(Excel data, AnalysisContext context) {
        dataList.add(data);
    }

    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {
        // 所有数据解析完成后的操作
    }

    public List<Excel> getDataList() {
        return dataList;
    }
}
  • 使用 EasyExcel来读取文件
    在这里插入图片描述

  • 定义文件路径

String fileName = "用户信息.xlsx";
  • 创建监视器执行读取方法
ExcelListener listener = new ExcelListener();
EasyExcel.read(fileName, UserData.class, listener).sheet().doRead();
  • 访问读取的数据
List<UserData> dataList = listener.getDataList();
for (UserData userData : dataList) {
System.out.println("用户名:" + userData.getUsername() + ", 年龄:" + userData.getAge());}

相关文章:

  • Golang快速上手02/Golang基础
  • Nginx将tomcat项目转发。将非80/443端口口转为80或443及https
  • mysql架构查询执行流程(图解+描述)
  • WPF高级 | WPF 3D 图形编程基础:创建立体的用户界面元素
  • ChatGPT 提示词框架
  • mysql数据迁移到SQLserver: 构建数据迁移脚本
  • 2025年网校系统源码开发趋势:技术革新的教育培训APP搭建实战
  • WPF11-附加属性
  • 推荐律师事务管理系统(SpringCloud+mysql+rocketmq+deepseek)
  • Qt 中,**信号与槽(Signals Slots)机制
  • docker通用技术介绍
  • 基于Python socket库构建的基于 P2P 的文件共享系统示例
  • 深入理解消息队列
  • 【TypeScript】TypeScript的应用实例
  • 重磅 | Cloud Ace 推出 GenAIOps 服务:加速企业生成式 AI 商业落地
  • wayland桌面录屏,屏幕录制,Linux屏幕录制
  • (功能测试)第五章 APP性能测试 常用的APP命令格式 补充与总结
  • React + TypeScript 数据血缘分析实战
  • DeepSeek R1 部署笔记(个人无框架部署,缓慢更新中)
  • Spring AOP 切面打印日志完整版
  • 新增备案网站/百度推广助手电脑版
  • 深圳网站 建设信科网络/今天的新闻有哪些
  • 晋江免费网站建设/梅花seo 快速排名软件
  • iis做网站的流程/百度网盟推广
  • 局域网聊天工具免费版/seo建站公司
  • 一个工厂做网站有用吗/免费网络推广软件有哪些