EasyExcel写入多个sheet

在这里插入图片描述

直接上代码:

    public static void main(String[] args) {

        // 设置excel工作簿
        ExcelWriter excelWriter = EasyExcel.write("F:\\excel\\a.xls")
                .build();

        List<User> userList = new ArrayList<>();
        userList.add(new User("lisi", "12"));
        userList.add(new User("wangWu", "15"));
        userList.add(new User("zhaoLiu", "22"));
        ExcelWriterSheetBuilder userExcelSheet = new ExcelWriterSheetBuilder();
        userExcelSheet.sheetName("学生信息");
        userExcelSheet.sheetNo(0);
        excelWriter.write(userList, userExcelSheet.build());


        List<ClassInfo> classInfoList = new ArrayList<>();
        classInfoList.add(new ClassInfo("1班", "22"));
        classInfoList.add(new ClassInfo("2班", "32"));
        ExcelWriterSheetBuilder classExcelSheet = new ExcelWriterSheetBuilder();
        classExcelSheet.sheetName("班级信息");
        classExcelSheet.sheetNo(1);
        excelWriter.write(classInfoList, classExcelSheet.build());

        excelWriter.finish();
    }

注意:
当设置完sheet时最后必须调用finish 方法不然当你打开excel时就会
在这里插入图片描述

  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用EasyExcel可以很方便地写入多个sheet。具体步骤如下: 1. 创建一个ExcelWriter对象,指定输出文件路径和文件名。 2. 创建多个WriteSheet对象,每个WriteSheet对象代表一个sheet。 3. 分别向每个WriteSheet对象中写入数据。 4. 最后调用ExcelWriter对象的finish方法,将数据写入到文件中。 示例代码如下: ```java // 创建ExcelWriter对象 ExcelWriter writer = EasyExcel.write("output.xlsx").build(); // 创建WriteSheet对象 WriteSheet sheet1 = EasyExcel.writerSheet(, "Sheet1").build(); WriteSheet sheet2 = EasyExcel.writerSheet(1, "Sheet2").build(); // 向sheet1中写入数据 List<List<String>> data1 = new ArrayList<>(); data1.add(Arrays.asList("姓名", "年龄", "性别")); data1.add(Arrays.asList("张三", "20", "男")); data1.add(Arrays.asList("李四", "25", "女")); writer.write(data1, sheet1); // 向sheet2中写入数据 List<List<String>> data2 = new ArrayList<>(); data2.add(Arrays.asList("学科", "成绩")); data2.add(Arrays.asList("语文", "90")); data2.add(Arrays.asList("数学", "80")); writer.write(data2, sheet2); // 完成写入操作 writer.finish(); ``` 以上代码将会生成一个名为output.xlsx的Excel文件,其中包含两个sheet,分别为Sheet1和Sheet2,每个sheet中都包含了对应的数据。 ### 回答2: EasyExcel是一个功能强大的Java Excel操作类库,可以轻松地操作Excel文件和各种操作。当需要在单个Excel文件中写入多个Sheet时,我们可以选择使用EasyExcel。 要在EasyExcel写入多个Sheet,需要先创建EasyExcel对象,并使用Sheet对象设置Sheet名称,然后将Sheet数据添加到Excel对象中。以下是示例代码: ```java public class WriteMultipleSheets { public static void main(String[] args) { // 创建excel对象 ExcelWriter excelWriter = EasyExcel.write("data.xlsx").build(); // 创建sheet对象 WriteSheet sheet1 = EasyExcel.writerSheet(0, "Sheet1").build(); WriteSheet sheet2 = EasyExcel.writerSheet(1, "Sheet2").build(); // 写入sheet1数据 excelWriter.write(getDataList(), sheet1); // 写入sheet2数据 excelWriter.write(getDataList(), sheet2); // 关闭excel对象 excelWriter.finish(); } //获取数据列表 private static List<Object> getDataList() { // TODO: 获取数据列表 return new ArrayList<>(); } } ``` 在上面的代码中,首先创建ExcelWriter对象并设置Excel文件路径。然后使用EasyExcel.writerSheet()方法创建Sheet对象,并传递Sheet名称和索引号参数。最后,通过ExcelWriter.write()方法将Sheet数据添加到Excel对象中。 同时,我们还需要根据实际情况将需要写入的数据以List对象返回。在示例代码中,我们定义了一个名为getDataList()的方法来获取数据列表。 总之,EasyExcel非常方便地实现了在单个Excel文件中写入多个Sheet的操作。只需要创建Sheet对象和使用ExcelWriter.write()方法添加数据即可。使用EasyExcel,你可以更快速、更简单地处理Excel文件! ### 回答3: EasyExcel 是一个 Java 操作 Excel 工具,它支持 Excel 文件的读取、写入及各种格式转换,扩展了 Apache POI,它比较方便、易用,容易上手,目前在Java领域被广泛使用。有时候我们需要将数据写入到 Excel 文件的多个Sheet中,下面是如何使用 EasyExcelJava 中实现将数据写入多个Sheet的方法。 首先需要导入 EasyExcel 的依赖,可以访问官方网站进行下载,也可以通过 Maven 进行依赖管理。在 pom.xml 文件中添加以下依赖: ``` <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.10</version> </dependency> ``` 其中,需要注意的是版本号,目前 EasyExcel 已经更新到了 3.0 版本,但写入多个 Sheet 的方式没有变化,上述方式仍然适用。 下面是使用 EasyExcel 实现将数据写入多个 Sheet 的代码: ```java public static void writeExcel() { String fileName = "test.xlsx"; List<List<String>> data1 = new ArrayList<>(); for (int i = 0; i < 10; i++) { List<String> row = new ArrayList<>(); row.add("Sheet1-" + i); row.add("Sheet1-" + i); data1.add(row); } List<List<String>> data2 = new ArrayList<>(); for (int i = 0; i < 10; i++) { List<String> row = new ArrayList<>(); row.add("Sheet2-" + i); row.add("Sheet2-" + i); data2.add(row); } try { OutputStream outputStream = new FileOutputStream(fileName); ExcelWriter excelWriter = new ExcelWriter(outputStream, ExcelTypeEnum.XLSX); WriteSheet sheet1 = new WriteSheet(); sheet1.setSheetName("Sheet1"); sheet1.setHead(Arrays.asList("列1", "列2")); sheet1.setClazz(String.class); excelWriter.write0(data1, sheet1); WriteSheet sheet2 = new WriteSheet(); sheet2.setSheetName("Sheet2"); sheet2.setHead(Arrays.asList("列1", "列2")); sheet2.setClazz(String.class); excelWriter.write0(data2, sheet2); excelWriter.finish(); outputStream.close(); } catch (Exception e) { e.printStackTrace(); } } ``` 上述代码中,首先创建一个输出流,以便 EasyExcel 将数据写入到指定的 Excel 文件中。然后创建一个 ExcelWriter 对象,并指定输出流和 Excel 文件类型。接下来,创建两个 WriteSheet 对象,并分别指定它们的名称、头部信息和类型。最后,通过 ExcelWriter 对象的 write0 方法将数据写入到对应的 WriteSheet 中,并使用 finish 方法关闭 ExcelWriter 对象,保存数据,并关闭输出流。 以上就是使用 EasyExcel 将数据写入多个 Sheet 中的方法。值得一提的是,EasyExcel 还支持读取 Excel 文件,并可以直接将数据读取到相应的 Java 对象中,具体实现可以参考官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值