EasyExcel.read报错 For input string: "7.00"
时间: 2023-07-08 07:29:30 浏览: 50
这个报错通常是因为 EasyExcel 在读取 Excel 文件时,发现了一个非法的数据格式,导致无法进行转换。根据报错信息来看,应该是你的 Excel 文件中有一个单元格的值是 "7.00",但是 EasyExcel 无法将其转换成整数或浮点数。
解决方法是,在读取 Excel 文件时,指定该单元格的数据类型为字符串类型。可以这样写:
```
EasyExcel.read(fileName)
.headRowNumber(1)
.registerConverter(new StringConverter()) // 注册字符串类型转换器
.sheet(sheetName)
.doRead();
```
其中,`StringConverter` 是一个简单的字符串类型转换器,实现如下:
```
public class StringConverter implements Converter<String> {
@Override
public Class<String> supportJavaTypeKey() {
return String.class;
}
@Override
public CellDataTypeEnum supportExcelTypeKey() {
return CellDataTypeEnum.STRING;
}
@Override
public String convertToJavaData(CellData cellData, ExcelContentProperty contentProperty,
GlobalConfiguration globalConfiguration) throws Exception {
return cellData.getStringValue();
}
@Override
public CellData<String> convertToExcelData(String value, ExcelContentProperty contentProperty,
GlobalConfiguration globalConfiguration) throws Exception {
return new CellData<>(value);
}
}
```
这样就可以避免该报错了。