我从这样的.xls文件中捕获我的单元格:
cell.getStringCellValue();
但是由于一些单元格是数字的,我必须这样做:
try { cells[colIx] = cell.getStringCellValue(); } catch (IllegalStateException e) { cells[colIx] = String.valueOf(cell.getNumericCellValue()); }
因为它得到一个double,然后将其转换为一个string,这会导致一些不需要的操作,如:
1转换成1.0(这不是一个大问题)
16711680转换为1.671168E7
我如何解决这个问题,并获得实际的单元格值,而不是一些转换的数字? 另外,所有的单元格在excel中都被定义为默认值
PHP的 – 需要一个cron的用户注册后台处理…(或叉进程)
我怎样才能mod_rewrite和保持查询string?
PHP尝试使用preg_match和preg_replace分配127 TB的内存和内存泄漏
PHP:权限被拒绝,尽pipe适当的权限
linux的msmtpconfiguration从shell发送,但是从PHP / apache失败
从access.log获取前20个IP – 按IPsorting – 添加用户代理
将子文件夹redirect到root并将其隐藏在url中
dynamic颠覆通过子域(在Apache中)
在java中处理X-FORWARDED-PROTO apache-tomcat
您可以使用Apache POI DataFormatter的formatCellValue(Cell cell)方法,因为它将字符串的格式化值作为字符串返回,而不考虑单元格类型。
根据DataFormatter doc –
DataFormatter包含用于格式化存储在单元格中的值的方法。 当您需要按照Excel中显示的数据显示数据时,这对于报告和GUI演示非常有用。 支持的格式包括货币,SSN,百分比,小数点,日期,电话号码,邮政编码等。
示例代码
DataFormatter dataFormatter= new DataFormatter(); // Inside loop String cellValueStr = dataFormatter.formatCellValue(cell);
尝试使用cell.getCellType(),因为你有
数字
日期
数字在科学记数法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。