我正在尝试使用Java POI HSSF读取excel文件。一切都运行正常,但当值为001001时,HSSFCell将返回1001.0
有什么方法可以使用HSSFCell来获取值001001?
我不应该对excel文件进行任何修改。
提前感谢您的任何帮助和建议。
修改
我一直在使用以下代码:
cell.setCellType(Cell.CELL_TYPE_STRING); cell.toString();
我还运行了调试模式,并在HSSF抓取它时检查了单元格值。它截断前导零并将其转换为double,因此我没有看到检索截断零的方法。有一个链接表明它可能是HSSF的一个错误: http://osdir.com/ml/jakarta.poi.user/2003-02/msg00007.html
顺便说一句,我通过硬编码解决了它。高级需要知道位数。我使用的代码的链接:How to format a Java string with leading zero?
答案 0 :(得分:0)
您可以尝试将其作为字符串而不是数字来阅读,
cell.setCellType(Cell.CELL_TYPE_STRING);
更改单元格类型通常不会修改单元格的内容。 可以使用以下任一方法检索它:
cell.getStringCellValue();
cell.getRichStringCellValue().getString();