alibaba/easyexcel

解析excel报错Cannot format given Object as a Number,但是怎么都复现不出来,求遇见相同问题的帮忙解答,版本3.0.5

Open

#4.134 aberto em 21 de ago. de 2025

Ver no GitHub
 (0 comments) (1 reaction) (0 assignees)Java (7.599 forks)batch import
help wanted

Métricas do repositório

Stars
 (33.728 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

表头处理 @Override public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) { this.headMap.putAll(headMap); } 模型 public class ImportEasyExcelData { private String value1; private String value2; private String value3; private String value4; private String value5; private String value6; private String value7; }

报错明细 Convert data com.alibaba.excel.metadata.data.ReadCellData@32772f63 to class java.lang.String error com.alibaba.excel.exception.ExcelDataConvertException: Convert data com.alibaba.excel.metadata.data.ReadCellData@32772f63 to class java.lang.String errorat com.alibaba.excel.util.ConverterUtils.doConvertToJavaObject(ConverterUtils.java:155)at com.alibaba.excel.util.ConverterUtils.convertToJavaObject(ConverterUtils.java:100)at com.alibaba.excel.read.listener.ModelBuildEventListener.buildUserModel(ModelBuildEventListener.java:103)at com.alibaba.excel.read.listener.ModelBuildEventListener.invoke(ModelBuildEventListener.java:41)at com.alibaba.excel.read.listener.ModelBuildEventListener.invoke(ModelBuildEventListener.java:26)at com.alibaba.excel.read.processor.DefaultAnalysisEventProcessor.dealData(DefaultAnalysisEventProcessor.java:99)at com.alibaba.excel.read.processor.DefaultAnalysisEventProcessor.endRow(DefaultAnalysisEventProcessor.java:46)at com.alibaba.excel.analysis.v07.handlers.RowTagHandler.endElement(RowTagHandler.java:46)at com.alibaba.excel.analysis.v07.handlers.sax.XlsxRowHandler.endElement(XlsxRowHandler.java:91)at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)at com.alibaba.excel.analysis.v07.XlsxSaxAnalyser.parseXmlSource(XlsxSaxAnalyser.java:197)at com.alibaba.excel.analysis.v07.XlsxSaxAnalyser.execute(XlsxSaxAnalyser.java:218)at com.alibaba.excel.analysis.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:123)at com.alibaba.excel.ExcelReader.read(ExcelReader.java:67)at com.alibaba.excel.ExcelReader.read(ExcelReader.java:57)at com.alibaba.excel.read.builder.ExcelReaderSheetBuilder.doRead(ExcelReaderSheetBuilder.java:65)at com.pdd.ei.purchasing.core.importData.impl.ImportDataAnalyzeServiceImpl.lambda$analysisUploadFile$1(ImportDataAnalyzeServiceImpl.java:132)at com.pdd.ei.purchasing.core.helper.ThreadPoolHelper.lambda$execute$2(ThreadPoolHelper.java:94)at com.alibaba.ttl.TtlRunnable.run(TtlRunnable.java:51)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at java.lang.Thread.run(Thread.java:748)Caused by: java.lang.IllegalArgumentException: Cannot format given Object as a Numberat java.text.DecimalFormat.format(DecimalFormat.java:507)at com.alibaba.excel.metadata.format.ExcelGeneralNumberFormat.format(ExcelGeneralNumberFormat.java:58)at java.text.Format.format(Format.java:157)at com.alibaba.excel.metadata.format.DataFormatter.performDateFormatting(DataFormatter.java:609)at com.alibaba.excel.metadata.format.DataFormatter.getFormattedDateString(DataFormatter.java:631)at com.alibaba.excel.metadata.format.DataFormatter.format(DataFormatter.java:662)at com.alibaba.excel.util.NumberDataFormatterUtils.format(NumberDataFormatterUtils.java:57)at com.alibaba.excel.util.NumberDataFormatterUtils.format(NumberDataFormatterUtils.java:35)at com.alibaba.excel.converters.string.StringNumberConverter.convertToJavaData(StringNumberConverter.java:54)at com.alibaba.excel.converters.string.StringNumberConverter.convertToJavaData(StringNumberConverter.java:23)at com.alibaba.excel.converters.Converter.convertToJavaData(Converter.java:57)at com.alibaba.excel.util.ConverterUtils.doConvertToJavaObject(ConverterUtils.java:153)

Guia do colaborador