Hutool如何给Excel按行设置背景颜色

您所在的位置:网站首页 如何调整excel背景色 Hutool如何给Excel按行设置背景颜色

Hutool如何给Excel按行设置背景颜色

2023-12-19 14:21| 来源: 网络整理| 查看: 265

Hutool如何给Excel按行设置背景颜色 原创

CorwinPC 2023-05-06 00:58:39 博主文章分类:后端 ©著作权

文章标签 excel hutool 背景色 背景颜色 主方法 文章分类 HarmonyOS 后端开发

©著作权归作者所有:来自51CTO博客作者CorwinPC的原创作品,请联系作者获取转载授权,否则将追究法律责任

在利用hutool根据某列给Excel设置 背景色时,你可能会遇见,设置背景色不生效或者后面填充的背景色会覆盖前面填充的背景色。下面给出一个已经实现了根据某列条件设置某行背景颜色的案例代码。

目录

 1、案例测试实体类

2、案例测试主方法

3、案例导出Excel效果展示

 1、案例测试实体类package com.ruoyi.cms.test; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; /** * @author Roc-xb */ @Data @AllArgsConstructor @NoArgsConstructor public class SapTaxResultTest { /** * 凭证编号 */ private String sapCretNo; /** * 用户名称 */ private String sapUserName; /** * 本币金额 */ private String sapAmount; /** * 发票号码 */ private String sapInvoiceNo; private String resultFlag; }2、案例测试主方法package com.ruoyi.cms.test; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.poi.excel.BigExcelWriter; import cn.hutool.poi.excel.ExcelUtil; import cn.hutool.poi.excel.ExcelWriter; import org.apache.poi.ss.usermodel.*; import java.util.List; /** * @author Roc-xb */ public class DemoTest { /** * 自定义设置单元格样式 * * @param writer hutool-Excel写入器 * @param x x_坐标 * @param y y_坐标 * @param index 背景色 */ private static void setCellStyle(ExcelWriter writer, int x, int y, short index) { CellStyle cellStyle = writer.createCellStyle(x, y); // 填充背景色 cellStyle.setFillForegroundColor(index); cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); // 解决填充背景色没有边框问题 cellStyle.setBorderBottom(BorderStyle.THIN); cellStyle.setBorderTop(BorderStyle.THIN); cellStyle.setBorderRight(BorderStyle.THIN); cellStyle.setBorderLeft(BorderStyle.THIN); } public static void main(String[] args) { // 构造测试数据 SapTaxResultTest sapTaxResultTest1 = new SapTaxResultTest("12321432", "发票1", "562.45", "3412354", "1"); SapTaxResultTest sapTaxResultTest2 = new SapTaxResultTest("12321432", "发票2", "562.45", "3412354", "2"); SapTaxResultTest sapTaxResultTest3 = new SapTaxResultTest("12321432", "发票3", "562.45", "3412354", "1"); SapTaxResultTest sapTaxResultTest4 = new SapTaxResultTest("12321432", "发票4", "562.45", "3412354", "1"); SapTaxResultTest sapTaxResultTest5 = new SapTaxResultTest("12321432", "发票5", "562.45", "3412354", "2"); List list = CollUtil.newArrayList(sapTaxResultTest1, sapTaxResultTest2, sapTaxResultTest3, sapTaxResultTest4, sapTaxResultTest5); BigExcelWriter writer = ExcelUtil.getBigWriter("C:/Users/Administrator/Desktop/bzbm/test" + RandomUtil.randomNumbers(2) + ".xlsx", "test表"); // 是否写入表头 writer.write(list, true); // 获取表格有多少列 int rowSize = writer.getColumnCount(); // 遍历数据行,设置单元格样式 for (int i = 1; i 收藏 评论 分享 举报

上一篇:Layui 2.8.1 正式发布,朴实归来

下一篇:网页如何实现一键切换繁体字或简体字呢?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3