From 5d7b65670282a4fad015e37d567cfa171b162052 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期二, 20 五月 2025 12:25:19 +0800 Subject: [PATCH] 基础代码 --- pt-common/src/main/java/com/ruoyi/common/easyExcel/StringConverter.java | 62 +++++++++++++++++++++++++++++++ 1 files changed, 62 insertions(+), 0 deletions(-) diff --git a/pt-common/src/main/java/com/ruoyi/common/easyExcel/StringConverter.java b/pt-common/src/main/java/com/ruoyi/common/easyExcel/StringConverter.java new file mode 100644 index 0000000..77f51bb --- /dev/null +++ b/pt-common/src/main/java/com/ruoyi/common/easyExcel/StringConverter.java @@ -0,0 +1,62 @@ +package com.ruoyi.common.easyExcel; + +import cn.hutool.core.util.ObjUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.excel.converters.Converter; +import com.alibaba.excel.converters.ReadConverterContext; +import com.alibaba.excel.converters.WriteConverterContext; +import com.alibaba.excel.enums.CellDataTypeEnum; +import com.alibaba.excel.metadata.data.WriteCellData; + +import java.math.BigDecimal; +import java.util.Objects; + + +public class StringConverter implements Converter<String> { + + @Override + public Class<?> supportJavaTypeKey() { + return String.class; + } + + @Override + public CellDataTypeEnum supportExcelTypeKey() { + return CellDataTypeEnum.STRING; + } + + /** + * 这里读的时候会调用 + * + * @param context + * @return + */ + @Override + public String convertToJavaData(ReadConverterContext<?> context) { + try { + String values = ""; + if (StrUtil.isNotBlank(context.getReadCellData().getStringValue())) { + values = String.valueOf(context.getReadCellData().getStringValue()); + } else if (Objects.nonNull(context.getReadCellData().getNumberValue())) { + BigDecimal test = context.getReadCellData().getNumberValue().setScale(0, BigDecimal.ROUND_DOWN); + values = test.toString(); + } + if (ObjUtil.isEmpty(values)) { + return ""; + } + return values.trim(); + }catch (Exception e){ + return ""; + } + } + + /** + * 这里是写的时候会调用 不用管 + * + * @return + */ + @Override + public WriteCellData<?> convertToExcelData(WriteConverterContext<String> context) { + return new WriteCellData<>(String.valueOf(context.getValue())); + } +} + -- Gitblit v1.7.1