java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的相关的知识,希望对你有一定的参考价值。

思路为:为了防止数字变成科学计数法方式表示,在源文件以及java代码中都用文本的方式去生成和解析excel,具体如下:

1.生成Excel时,设置单元格格式为STRING,即:

//关键代码
HSSFCell  cell = new HSSFCell();
cell.setCellType(HSSFCell.CELL_TYPE_STRING);

2.同理,解析的时候,首先要保证源excel文件中该单元格格式是文本类型的,然后在java代码里用STRING类型去解析:

//关键代码
String value = cell.getStringCellValue();

参考技术A


如图  poi的单元格  cell设置值的时候可以传个数字,也可以传字符串,如果传数值过大会自动转换成科学计数法,可以考虑传数字的字符串格式进去;

cell.setCellValue(val+"");

参考技术B

思路为:为了防止数字变成科学计数法方式表示,在源文件以及java代码中都用文本的方式去生成和解析excel,具体如下: 1.生成Excel时,设置单元格格式为STRING,即: //关键代码HSSFCell cell = new HSSFCell();cell.setCellType(HSSFCell.CELL_TYPE_STRING);2.同理,解析的时候,首先要保证源excel文件中该单元格格式是文本类型的,然后在java代码里用STRING类型去解析: //关键代码String value = cell.getStringCellValue()。

参考技术C 把数值类型(Integer,Long,Double)转换成String即可。 参考技术D DecimalFormat df = new DecimalFormat("0");

String whatYourWant = df.format(cell.getNumericCellValue());

以上是关于java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的的主要内容,如果未能解决你的问题,请参考以下文章

java 如何解析 excel

java 使用 poi 解析excel

java使用poi读取excel时,电话号码变成了科学计数法,整数变成double,怎么改过来

poi 解析excel问题

java导入excel 后台poi解析时数据由14700.00变成了14699.99999999998这是为啥呢?

java poi解析excel报错处理