poi读取Excel时,如果单元格设置的是数字格式,如何解决整数与小数问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了poi读取Excel时,如果单元格设置的是数字格式,如何解决整数与小数问题相关的知识,希望对你有一定的参考价值。

poi默认的是double类型的数据,但是如果Excel设置的是数字格式,那么如何修改程序,使得输入整数即读出整数,输入小数即读出小数

1、实现日期格式的方法代码。

2、实现保留三位小数格式的方法代码。

3、实现货币格式的方法代码。

4、实现百分比格式的方法代码。

4、实现中文大写格式的方法代码。

注意事项:

Excel虽然提供了大量的用户界面特性,但它仍然保留了第一款电子制表软件VisiCalc的特性:行、列组成单元格,数据、与数据相关的公式或者对其他单元格的绝对引用保存在单元格中。

参考技术A 可以试试下面这段代码:
Workbook excelWB = null;
excelWB = new XSSFWorkbook(excelFile);
oneSheet = excelWB.getSheetAt(0);
oneRow = oneSheet.getRow(rowNum);

     if (oneRow == null) 

      continue;

     // 获取第几列对象

      oneCell = oneRow.getCell(1);

      if (oneCell == null) 

       continue;

      
  switch (oneCell.getCellType()) 

      case HSSFCell.CELL_TYPE_STRING:

      System.out.println(oneCell.getStringCellValue());

       break;

      case HSSFCell.CELL_TYPE_FORMULA:

       System.out.println(oneCell.getCellFormula());
 
       break;

      case HSSFCell.CELL_TYPE_NUMERIC:

       HSSFDataFormatter dataFormatter = new HSSFDataFormatter();

       String cellFormatted = dataFormatter.formatCellValue(oneCell);

System.out.println( cellFormatted );        
        break;

      case HSSFCell.CELL_TYPE_ERROR:

       break;

      

本回答被提问者和网友采纳

java用poi读取excel文件时怎么获取每个单元格的列宽?

getColumnWidth() 读取的是表格中的字符串宽度,我想要获取单元格宽度

参考技术A poi的api文档如下
https://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/Sheet.html
希望对你有用,经过查找核对后,还是用getColumnWidth本回答被提问者和网友采纳

以上是关于poi读取Excel时,如果单元格设置的是数字格式,如何解决整数与小数问题的主要内容,如果未能解决你的问题,请参考以下文章

java poi 导入 excel怎么设置单元格格式为 文字

java读取excel时间格式出现数字怎么处理

用java poi包读取Excel单元格

java中导出excel设置单元格的样式为数字格式怎么设置

为啥用poi读取excel 的数字全是double

java中导出excel设置单元格的样式为数字格式怎么设置?