首页 > 其他分享 >Easy Excel 导出存在绿色角标问题[返回字段类型是数字,当时使用String来接收]

Easy Excel 导出存在绿色角标问题[返回字段类型是数字,当时使用String来接收]

时间:2023-10-26 14:55:55浏览次数:27  
标签:cellData excel Excel alibaba write 角标 Easy import com

 一、背景

  Easy Excel 导出,发现excel 存在大量的绿色角标,很影响美观,如果个人使用可以设置wps或office 忽略检测警告,

 但是我是对业主的,所以这一方式对我不适用,只能通过代码的方式解决.

 二、实现

通过以下创建一个 ExcelWriter ,实现去绿色角标的关键是 使用easyExcel 自带的拦截器.

ExcelWriter excelWriter = EasyExcel.write(byteArrayOutputStream).registerWriteHandler(new CustomCellWriteHandler()).withTemplate(resource.getInputStream()).build())

  

拦截器写法

package me.zhengjie.modules.util;

import cn.hutool.core.util.NumberUtil;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.Head;
import com.alibaba.excel.metadata.data.WriteCellData;
import com.alibaba.excel.write.handler.CellWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteTableHolder;
import org.apache.poi.ss.usermodel.Cell;

public class CustomCellWriteHandler implements CellWriteHandler {
    @Override
    public void afterCellDataConverted(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, WriteCellData<?> cellData, Cell cell, Head head, Integer relativeRowIndex, Boolean isHead) {
        // 数据为纯数字时,设置单元格类型为数字
        String dataValue = cellData.getStringValue();
        if (NumberUtil.isNumber(dataValue)) {
            cellData.setType(CellDataTypeEnum.NUMBER);
            cellData.setNumberValue(NumberUtil.toBigDecimal(dataValue));
        }
    }

}

  原先截图是这样

  

   使用自定义拦截器后(干干净净)

 

三、参考博客

https://easyexcel.opensource.alibaba.com/docs/current/quickstart/write#%E5%AE%9A%E4%B9%89%E6%8B%A6%E6%88%AA%E5%99%A8

 

标签:cellData,excel,Excel,alibaba,write,角标,Easy,import,com
From: https://www.cnblogs.com/lcaiqin/p/17789414.html

相关文章

  • # yyds干货盘点 # Python实现excel工作簿中单元格底色为黄色的数据筛选
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个pandas数据提取的问题,一起来看看吧。大佬们请教个问题有没有什么办法可以实现 excel工作簿中单元格底色为黄色的行筛选出来 当行只要有一个单元格标黄了当行数据筛选出来?二、实现过程这里【......
  • Python实现excel工作簿中单元格底色为黄色的数据筛选
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个pandas数据提取的问题,一起来看看吧。大佬们请教个问题有没有什么办法可以实现 excel工作簿中单元格底色为黄色的行筛选出来 当行只要有一个单元格标黄了当行数据筛选出来?二、实现过程......
  • Excel VSTO 查询重复项
    一、需求描述:EXCEL原有的重复项识别功能,在识别身份证号码上存在识别错误。非重复项也识别为重复项。 二、编写ExcelVSTO外接程序1.创建新项目-ExcelVSTO外接程序,项目名:Dedupe  2.右键项目-添加-新建项-Office/SharePoint-功能区-添加  3.添加功能按钮 4编写功......
  • Python合并多个Excel文件中的指定sheet
    本文将介绍一个用于合并多个Excel文件中指定sheet的Python代码。这个功能可以方便地整理和分析数据。我们将逐步解释代码的每个部分,并提供示例用法。导入库首先,我们导入了需要使用的三个库:os、pandas和time。这些库分别用于操作文件和文件夹、处理Excel文件以及计算程序执行时间......
  • ExcelPatternTool 开箱即用的Excel工具包现已发布!
    目录ExcelPatternTool功能特点:快速开始使用说明常规类型高级类型Importable注解Exportable注解IImportOption导入选项IExportOption导出选项单元格样式StyleMapping样式映射使用数据库作为数据源示例Sample1:不同类型字段导出Sample2:高级类型导入和导出Sample3:员工健康体检工具已知......
  • 灵活、可用、高扩展,EasyMR 带来全新 Yarn 的队列管理功能及可视化配置
    YARN(YetAnotherResourceNegotiator)是Hadoop生态系统中的资源调度器,主要用于资源管理和作业调度。YARN自身具备队列管理功能,通过对YARN资源队列进行配置和管理,实现集群资源的分配,以满足不同应用和用户的需求。YARN的引入为集群在利用率、资源统一管理和数据共享等方面带来......
  • Excel XLL C API
    Capi真的强大紧靠Excel4V或者Excel12V操作Excel表格属性、方法、事件。 32位XLL 64位XLL......
  • 使用pandas模块将excel文档两列转换为字典
    一个名为err_code.xlsx的文件,打开里面内容是: 一共有几百行这样的数据。我们的需求是将其变为这种字典格式,key、value、和注释: 可以借助pandas模块来进行。脚本如下:importpandasaspddf=pd.read_excel('err_code.xlsx')countrymap=dict(zip(d......
  • 手把手教你在项目中引入Excel报表组件
    摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。前言GrapeCityDocumentsforExcel(以下简称GcExcel)是葡萄城公司的一款支持批量创建、编辑、打印、导入/导出Excel文件的服务端表格组件,能够高性......
  • Java EasyExcel 随记
    JAR<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.7</version></dependency>入口EasyExcel.write(response.getOutputStream(),导出实体类.class).sheet("......