java - 如何在 apache POI 中读取 excel 文件的确切单元格内容

标签 java excel apache-poi

当我阅读单元格的内容时,例如如果它是日期格式,它会转换为其他值,例如 12/31/2099 -> 46052 和 $50.00 -> 50 和 50.00% -> 0.5。

但我想要的是为每个单元格获取准确的字符串值。

我的代码是这样的:

cell.setCellType(Cell.CELL_TYPE_STRING);
String str = cell.getStringCellValue();

最佳答案

无需显式格式化,Apache POI 提供 DataFormatter类作为实用程序来利用 excel 上显示 的内容格式。您也可以选择自定义格式,一个简单的示例是(单元格是对您的 XSSFCell 对象的引用):

System.out.println(new DataFormatter().formatCellValue(cell));

Excel 表格如下所示:

enter image description here

使用 DataFormatter(上面的 sop 语句)打印:

50%
$ 1,200
12/21/14

正常格式打印的位置:

0.5
1200.0
21-Dec-2014

关于java - 如何在 apache POI 中读取 excel 文件的确切单元格内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21624528/

相关文章:

Java 等价于 Python 的 "Got value: %s"% 变量?

vba - 将 div0 错误更改为一个值(获取错误 13)vba excel

java - 读取多个excel文件并将数据推送到java中的各个对象,寻找有效的方法

java - JXL+POI : incompatibility

java - 如何撤消/重置 PowerMockito.mockStatic?

java - 删除 JTable 中的单元格编辑器边框 (Windows LaF)

excel - 更改excel vba中的系列

VBA将单元格引用传递到方法参数值

Java (Apache POI) 如何在整个页面上拉伸(stretch) XWPFTable 行

java - 在 Python 中测试时加载不同的资源