2

我正在尝试使用 Java POI HSSF 读取 excel 文件。一切正常,除了当值为 001001 时 HSSFCell 将返回 1001.0

有什么方法可以使用 HSSFCell 来获取值 001001 ?

我不应该对 excel 文件进行任何修改。

提前感谢您的任何帮助和建议。

编辑

我一直在使用以下代码:

cell.setCellType(Cell.CELL_TYPE_STRING); 单元格.toString();

我还运行了一个调试模式,并在 HSSF 抓取它的那一刻检查单元格值。它截断前导零并将其转换为双精度因此我看不到检索截断零的方法。有一个链接表明它可能是来自 HSSF 的错误:http: //osdir.com/ml/jakarta.poi.user/2003-02/msg00007.html

顺便说一句,我通过硬编码解决了它。位数是预先知道的。我使用的代码的链接:如何格式化带有前导零的 Java 字符串?

4

1 回答 1

0

你能试着把它读成字符串而不是数字吗?

cell.setCellType(Cell.CELL_TYPE_STRING);

更改单元格类型通常不会修改单元格的内容。可以使用以下任一方法检索它:

cell.getStringCellValue();

cell.getRichStringCellValue().getString();
于 2014-06-12T07:58:09.443 回答