当前位置: 首页 > article >正文

解决 EasyExcel BigDecimal 加%的问题

1.看很多资料还是有问题 于是想到可以用转换器来实现
这是原来的方式

    @NumberFormat(value = "#.##%")
    private BigDecimal proportion;

请看大屏幕

import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.GlobalConfiguration;
import com.alibaba.excel.metadata.data.ReadCellData;
import com.alibaba.excel.metadata.data.WriteCellData;
import com.alibaba.excel.metadata.property.ExcelContentProperty;
import com.alibaba.excel.util.NumberUtils;

import java.math.BigDecimal;
import java.text.ParseException;
public class BigDecimalAddPercentConverter implements Converter<BigDecimal> {
    public BigDecimalAddPercentConverter() {
    }

    public Class<BigDecimal> supportJavaTypeKey() {
        return BigDecimal.class;
    }

    public CellDataTypeEnum supportExcelTypeKey() {
        return CellDataTypeEnum.STRING;
    }

    public BigDecimal convertToJavaData(ReadCellData<?> cellData, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) throws ParseException {
        return NumberUtils.parseBigDecimal(cellData.getStringValue(), contentProperty);
    }

    public WriteCellData<?> convertToExcelData(BigDecimal value, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) {
        return new WriteCellData<>(value+"%");
    }
}

其实也很简单哈
修改后的

	@ExcelProperty(converter = BigDecimalAddPercentConverter.class)
    private BigDecimal proportion;

http://www.kler.cn/a/292487.html

相关文章:

  • C#从入门到放弃
  • ubuntu22.04 安装FFmpeg,并进行视频的转化格式和裁剪
  • 提升前端性能:如何优化多个异步请求的执行效率Promise.all()
  • flinkOnYarn并配置prometheus+grafana监控告警
  • 探索MoviePy:Python视频编辑的瑞士军刀
  • EXCEL延迟退休公式
  • 请解释Java Web中的Filter的作用和使用场景。什么是Java Web中的JSP?请解释其与Servlet的关系及各自优势。
  • OPC DA
  • 2024数学建模国赛高教社杯C题:农作物的种植策略 思路代码文章助攻手把手保姆级
  • 编程秘密武器:提升工作效率的关键工具
  • 图像增强及运算篇之顶帽运算和底帽运算
  • Databend 产品月报(2024年8月)
  • 智能电源控制箱
  • ssm基于微信小程序的食堂线上预约点餐系统论文源码调试讲解
  • RabbitMQ 02 操作,配置信息,用户权限
  • Spring实现纯注解项目开发
  • Docker Volume(存储卷)
  • 鸿蒙状态管理
  • 拍卖新纪元:Spring Boot赋能在线拍卖解决方案
  • shell 学习笔记:数组
  • 智慧平台赋能政务管理,声通科技助力政务管理智能化
  • echarts加载地图svg
  • PostgreSQL技术内幕5:PostgreSQL存储引擎从磁盘到内存的读取
  • sed和awk编辑器
  • 二级菜单的两种思路(完成部分)
  • Day12_0.1基础学习MATLAB学习小技巧总结(12)——程序流程控制3-switch结构