JAVA读取写入excel操作,通过easyexcel读写excel

EasyExcel 是一个基于 Apache POI 的封装库,用于简化 Excel 的读写操作。它主要优化了内存的使用,使得在处理大量数据时更加高效。

添加依赖

通过maven的pon添加依赖

        <dependency>

            <groupId>com.alibaba</groupId>

            <artifactId>easyexcel</artifactId>

            <version>3.3.4</version>

        </dependency>

写入excel

import com.alibaba.excel.EasyExcel;

import com.alibaba.excel.annotation.ExcelProperty;

import java.util.ArrayList;

import java.util.List;



public class ExcelWriteDemo {

    public static void main(String[] args) {

        // 准备数据

        List<DemoData> list = new ArrayList<>();

        for (int i = 0; i < 10; i++) {

            DemoData data = new DemoData();

            data.setId(i);

            data.setName("姓名" + i);

            data.setAge(20 + i);

            list.add(data);

        }

        EasyExcel.write("D:\\doc\\gitspace\\demo\\src\\main\\resources\\excel\\simple.xlsx", DemoData.class).sheet()

                .sheetName("用户信息").doWrite(list);

    }



    public static class DemoData {



        @ExcelProperty("ID")



        private Integer id;







        @ExcelProperty("姓名")



        private String name;







        @ExcelProperty("年龄")



        private Integer age;







        // 省略getter和setter方法



        public Integer getId() {



            return id;



        }







        public void setId(Integer id) {



            this.id = id;



        }







        public String getName() {



            return name;



        }







        public void setName(String name) {



            this.name = name;



        }







        public Integer getAge() {



            return age;



        }







        public void setAge(Integer age) {



            this.age = age;



        }



    }

}

效果

读取excel

import com.alibaba.excel.EasyExcel;

import com.alibaba.excel.context.AnalysisContext;

import com.alibaba.excel.read.listener.ReadListener;

import java.util.Map;

public class ExcelReadDemo {

    public static void main(String[] args) {

        EasyExcel.read("D:\\doc\\gitspace\\demo\\src\\main\\resources\\excel\\simple.xlsx", new ReadListener<Map>() {

            @Override

            public void invoke(Map data, AnalysisContext context) {

                // 处理读取到的数据

                System.out.println(data);

            }

            @Override

            public void doAfterAllAnalysed(AnalysisContext context) {

                // 所有数据解析完成后的操作

            }

        }).sheet().doRead();

    }

}

控制台输出

以上就是通过easyexcel读写excel的基本操作了,easyexcel还支持复杂表头的读取写入操作,有需要的同学可以自行了解~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

常量侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值