diff --git a/src/main/java/com/alibaba/excel/converters/DefaultConverterLoader.java b/src/main/java/com/alibaba/excel/converters/DefaultConverterLoader.java index 93408f25..02f00313 100644 --- a/src/main/java/com/alibaba/excel/converters/DefaultConverterLoader.java +++ b/src/main/java/com/alibaba/excel/converters/DefaultConverterLoader.java @@ -117,7 +117,6 @@ public class DefaultConverterLoader { putWriteConverter(new ByteArrayImageConverter()); putWriteConverter(new BoxingByteArrayImageConverter()); putWriteConverter(new UrlImageConverter()); - putWriteConverter(new BigIntegerStringConverter()); // In some cases, it must be converted to string putWriteStringConverter(new BigDecimalStringConverter()); @@ -130,6 +129,7 @@ public class DefaultConverterLoader { putWriteStringConverter(new LongStringConverter()); putWriteStringConverter(new ShortStringConverter()); putWriteStringConverter(new StringStringConverter()); + putWriteStringConverter(new BigIntegerStringConverter()); } /** diff --git a/src/main/java/com/alibaba/excel/converters/biginteger/BigIntegerStringConverter.java b/src/main/java/com/alibaba/excel/converters/biginteger/BigIntegerStringConverter.java index 67910d77..4894ac16 100644 --- a/src/main/java/com/alibaba/excel/converters/biginteger/BigIntegerStringConverter.java +++ b/src/main/java/com/alibaba/excel/converters/biginteger/BigIntegerStringConverter.java @@ -1,13 +1,13 @@ package com.alibaba.excel.converters.biginteger; -import java.math.BigDecimal; import java.math.BigInteger; import java.text.ParseException; import com.alibaba.excel.converters.Converter; import com.alibaba.excel.enums.CellDataTypeEnum; -import com.alibaba.excel.metadata.CellData; 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; @@ -19,7 +19,7 @@ import com.alibaba.excel.util.NumberUtils; public class BigIntegerStringConverter implements Converter { @Override - public Class supportJavaTypeKey() { + public Class supportJavaTypeKey() { return BigInteger.class; } @@ -29,14 +29,14 @@ public class BigIntegerStringConverter implements Converter { } @Override - public BigInteger convertToJavaData(CellData cellData, ExcelContentProperty contentProperty, - GlobalConfiguration globalConfiguration) throws ParseException { + public BigInteger convertToJavaData(ReadCellData cellData, ExcelContentProperty contentProperty, + GlobalConfiguration globalConfiguration) throws ParseException { return NumberUtils.parseBigDecimal(cellData.getStringValue(), contentProperty).toBigInteger(); } @Override - public CellData convertToExcelData(BigInteger value, ExcelContentProperty contentProperty, - GlobalConfiguration globalConfiguration) { + public WriteCellData convertToExcelData(BigInteger value, ExcelContentProperty contentProperty, + GlobalConfiguration globalConfiguration) { return NumberUtils.formatToCellData(value, contentProperty); } }