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 { @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(); values = test.toString(); } if (ObjUtil.isEmpty(values)) { return ""; } return values.trim(); }catch (Exception e){ return ""; } } /** * 这里是写的时候会调用 不用管 * * @return */ @Override public WriteCellData convertToExcelData(WriteConverterContext context) { return new WriteCellData<>(String.valueOf(context.getValue())); } }