java通过POI读取excel2003时,单元格类型取得错误。
先将excel中单元格都写上数字,然后再设置单元格格式都是文本。然后再随便点几个单元格。-----点进去的单元格左上角有个三角形的绿色的小标志(代表是文本)-----没有...
先将excel中单元格都写上数字,然后再设置单元格格式都是文本。然后再随便点几个单元格。
-----点进去的单元格左上角有个三角形的绿色的小标志(代表是文本)
-----没有点进去的单元格是普通的
java用poi的hssfCell.getCellType()函数取得的带绿色标志的单元格的值是1
但是不带的就是0.这个怎么处理。
(excel没办法改,2种可能都有,只能在java判断)
求解法。谢谢各位了。
这个在java中有解决办法么?
如果hssfCell.getCellType()返回是0,hssfCell.getNumericCellValue()取得的单元格的值就会加上“.0”,与真实值不同了。 展开
-----点进去的单元格左上角有个三角形的绿色的小标志(代表是文本)
-----没有点进去的单元格是普通的
java用poi的hssfCell.getCellType()函数取得的带绿色标志的单元格的值是1
但是不带的就是0.这个怎么处理。
(excel没办法改,2种可能都有,只能在java判断)
求解法。谢谢各位了。
这个在java中有解决办法么?
如果hssfCell.getCellType()返回是0,hssfCell.getNumericCellValue()取得的单元格的值就会加上“.0”,与真实值不同了。 展开
3个回答
展开全部
case Cell.CELL_TYPE_STRING : value = cell.getRichStringCellValue().getString(); break;//字符串
case Cell.CELL_TYPE_NUMERIC : long dd = (long)cell.getNumericCellValue(); value = dd+""; break; //数字
case Cell.CELL_TYPE_BLANK : value = ""; break;
case Cell.CELL_TYPE_FORMULA : value = String.valueOf(cell.getCellFormula()); break;
case Cell.CELL_TYPE_BOOLEAN : value = String.valueOf(cell.getBooleanCellValue());break;//boolean型值
case Cell.CELL_TYPE_ERROR : value = String.valueOf(cell.getErrorCellValue()); break;
用Cell. 判断下吧 如果你用hssfCell来判断 你还得用判断03 还是07 啊 这个问题你肯定得解决的。
case Cell.CELL_TYPE_NUMERIC : long dd = (long)cell.getNumericCellValue(); value = dd+""; break; //数字
case Cell.CELL_TYPE_BLANK : value = ""; break;
case Cell.CELL_TYPE_FORMULA : value = String.valueOf(cell.getCellFormula()); break;
case Cell.CELL_TYPE_BOOLEAN : value = String.valueOf(cell.getBooleanCellValue());break;//boolean型值
case Cell.CELL_TYPE_ERROR : value = String.valueOf(cell.getErrorCellValue()); break;
用Cell. 判断下吧 如果你用hssfCell来判断 你还得用判断03 还是07 啊 这个问题你肯定得解决的。
展开全部
你直接填充的值,变为 '1 . 也就是直接写入英文的单引号即可。如果返回来的也有单引号,那么你就去掉第一个字符就好了。
追问
excel无法修改。
只能通过java的poi进行判断。
追答
那每一个列,到底是什么类型,你肯定是知道的吧? 你全部按照string取值,然后自己解析。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
以前做过POI 但是没看懂你想问什么
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询