我正在使用POI库从excel表中读取确切的字符串值。问题是,要求用户显式地将单元格类型设置为文本是不可接受的,因此excel自动将数字输入转换为数字值。
当我尝试以字符串的形式返回值时,会出现以下问题:
Cell.getStringValue()函数。它引发异常,因为我的字段被隐式设置为数字类型字段。Double.toString或Cell.toString()的字符串,我的字段是用小数转换的,即使它是一个圆值。例如,我将数字'1‘写到字段中。它自动转换为1的数字值。当我试图返回字符串值时,我会得到"1.0“字符串值,wich是有问题的。在这个场景中,有什么方法可以取回原始字符串吗?在测试之后,我能找到的唯一解决方案是禁止在用户输入中使用小数。
发布于 2015-10-26 11:50:09
在这方面,我认为excel女士是洛西。例如,如果在单元格中键入00123,它将自动转换为123。这是在使用POI读取数据之前发生的,因此不幸的是,POI无法访问原始值。
我认为唯一的选择是在将数据输入到单元格之前将单元格格式设置为string。
很烦人!
https://stackoverflow.com/questions/33344888
复制相似问题