如何在apache POI中读取excel文件的确切单元格内容 [英] how to read exact cell content of excel file in apache POI
问题描述
当我阅读单元格的内容时,例如如果它是日期格式,它会转换为另一个值,例如 12/31/2099 -> 46052 和 $50.00 -> 50 和 50.00% -> 0.5.
when I read a content of cell for e.g. if it is in date format it casts into some another value like 12/31/2099 -> 46052 and $50.00 -> 50 and 50.00% -> 0.5.
但我想要的是获取每个单元格的确切字符串值.
But what I want is to get the exact string value for every cell.
我的代码是这样的:
cell.setCellType(Cell.CELL_TYPE_STRING);
String str = cell.getStringCellValue();
推荐答案
无需显式格式化,Apache POI 为 DataFormatter
类作为实用程序来利用 内容的格式在 excel 上.您也可以选择自定义格式,一个简单的例子是(单元格是对您的 XSSFCell
对象的引用):
No need for explicit formatting, Apache POI provides for DataFormatter
class as utility to leverage the format of the content as it appears on the excel. You can choose custom formats too, a simple example would be (cell is reference to your XSSFCell
object):
System.out.println(new DataFormatter().formatCellValue(cell));
Excel 表格如下所示:
Excel sheet looks like:
使用 DataFormatter
(上面的 sop 语句)打印:
Using DataFormatter
(sop statement above) prints:
50%
$ 1,200
12/21/14
正常格式的打印位置:
0.5
1200.0
21-Dec-2014
这篇关于如何在apache POI中读取excel文件的确切单元格内容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!