java用EasyExcel实现xls写

添加依赖

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

我的代码是读取填充具体可以看官方文档写的很清楚 传送阵
源文件是这样子的
在这里插入图片描述

 /**
     * 工信部报送模板xls 导出使用
     * @return
     */
    @Override
    public Integer FtDocResult() {

        // 模板注意 用{name} 来表示你要用的变量 用{.name} 表示传的是集合
        //这个地址就是读取文件的格式,按照这个格式去填充数据,这个文件不会改变
        String templateFileName ="E:\\YuanDongJu\\haining-guarantee\\fante-business\\src\\main\\java\\com\\ruoyi\\test\\工信部报送模板.xls";
          // 这个就是按照上面的文件格式,填充好数据的文件
        String fileName = file.getPath()+"\\工信部报送模板-" + System.currentTimeMillis() + ".xls";

        FileSystemView fsv = FileSystemView.getFileSystemView();
        //获取电脑桌面路径
        File file =fsv.getHomeDirectory();
      
        //获取数据    financingStatus 用信状态 2 成功                                                          financingPerfect 是否完善 1 是已经完善,所需的资料都存在
        //这个就是一个list实体类,实体类的字段要和xls表中{name}中的数据对应
        List<FtDocResult> ftDocResultslist = docEasyMapper.FtDocResult(ActivitiEnum.AUDIT_STATUS.PASS.getStatus(), BizConstants.StrNum.ONE);
        //储存数据
        List<DocEasy> easyList = new ArrayList<>();

        DocEasy easy = new DocEasy();
        //遍历修改
        ftDocResultslist.forEach((data)->{
            //转万元
            data.getFtDoc().setSalesRevenue(Arith.yuanToWan(data.getFtDoc().getSalesRevenue()));
            data.getFtDoc().setTotalAssets(Arith.yuanToWan(data.getFtDoc().getTotalAssets()));
            data.getFtDoc().setGuaranteeAmount(Arith.yuanToWan(data.getFtDoc().getGuaranteeAmount()));
            //对象数据复制
            BeanUtils.copyProperties(data.getFtDoc(),easy);
            //放款银行名称是 融资用信中的:担保银行字段
            easy.setBankName(data.getFtFinancing().getGuaranteeBank());
            //添加
            easyList.add(easy);
        });
        // EasyExcel.write(fileName).withTemplate(templateFileName).sheet().doFill(easyList);

        //这里 会填充到第一个sheet, 然后文件流会自动关闭
        ExcelWriter excelWriter = EasyExcel.write(fileName).withTemplate(templateFileName).build();
        WriteSheet writeSheet = EasyExcel.writerSheet().build();
        excelWriter.fill(easyList, writeSheet);
        excelWriter.fill(easyList, writeSheet);
        // 关闭流
        excelWriter.finish();

        return 1;
    }

效果图在这里插入图片描述
还有更多强大的用法还是去官网看吧,写的还是蛮清楚的
传送阵

要使用EasyExcel实现导出xls文件,你需要按照以下步骤进行操作: 1. 首先,你需要在你的项目中添加EasyExcel的依赖。你可以在pom.xml文件中添加以下内容: ```xml <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.10</version> </dependency> ``` 2. 创建一个Java类,用于实现导出功能。在该类中,你可以使用EasyExcel提供的API来实现导出操作。下面是一个简单的示例代码: ```java import com.alibaba.excel.EasyExcel; import com.alibaba.excel.write.builder.ExcelWriterBuilder; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; import java.util.ArrayList; import java.util.List; public class ExcelExporter { public static void main(String[] args) { // 创建数据列表 List<User> userList = new ArrayList<>(); userList.add(new User("张三", 20)); userList.add(new User("李四", 25)); userList.add(new User("王五", 30)); // 指定导出文件路径和文件名 String fileName = "user_list.xls"; // 使用EasyExcel进行导出 EasyExcel.write(fileName, User.class) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .sheet("用户列表") .doWrite(userList); } static class User { private String name; private Integer age; public User(String name, Integer age) { this.name = name; this.age = age; } // 省略getter和setter方法 } } ``` 在上面的示例中,我们创建了一个名为`ExcelExporter`的类,其中包含了一个名为`User`的内部类作为导出数据的模型。我们使用`EasyExcel.write()`方法来指定导出文件的路径和文件名,使用`.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())`来设置列宽自适应,并使用`.sheet()`方法指定导出的sheet名称。最后,使用`.doWrite()`方法执行导出操作。 3. 运行该类,你将在指定的路径下找到生成的xls文件。 请注意,上述示例代码仅供参考,你可以根据自己的需求进行修改和扩展。此外,还可以使用EasyExcel提供的其他功能,如读取xls文件、自定义样式等。你可以参考EasyExcel的官方文档以获得更多详细信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值