请问poi3.15里面如何判断cell的类型

津岛夜羽 2016-11-02 02:39:54
貌似之前都是直接Cell.CELL_TYPE_BLANK == cell.getCellType()这样来判断的,但是3.15这2个都取消了改为CellType.NUMERIC和cell.getNumericCellValue()这样,一个是枚举,类型是CellType,一个是double或者其他Date,int类型,这样根本无法比较,apache里面的文档只是更新了这些,请问有知道的吗。不胜感激。。。。。
...全文
1280 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gyga 2019-05-15
  • 打赏
  • 举报
回复
getCellTypeEnum
苍谭 2019-05-05
  • 打赏
  • 举报
回复
然后最新好像又换回来了emmmmm
  • 打赏
  • 举报
回复
然而getCellTypeEnum依旧过时
苍谭 2018-09-23
  • 打赏
  • 举报
回复
POI3.15后就放弃getCellType进而使用getCellTypeEnum
虽然是有点早的帖子了,但是希望看到这篇帖子的人能有答案
寰宇紫梦 2017-01-04
  • 打赏
  • 举报
回复
现在getCellType已经过时了,不建议使用了,楼主想知道,现在官方建议使用的是什么方法
鱿鱼ing 2016-11-02
  • 打赏
  • 举报
回复
是想干这个事吗

/** 循环Excel的列 */
for (int c = 0; c < this.getTotalCells(); c++){
Cell cell = row.getCell(c);
String cellValue = "";
if (null != cell) {
// 以下是判断数据的类型
switch (cell.getCellType()){
case HSSFCell.CELL_TYPE_NUMERIC: // 数字
cellValue = cell.getNumericCellValue() + "";
break;

case HSSFCell.CELL_TYPE_STRING: // 字符串
cellValue = cell.getStringCellValue();
break;

case HSSFCell.CELL_TYPE_BOOLEAN: // Boolean
cellValue = cell.getBooleanCellValue() + "";
break;

case HSSFCell.CELL_TYPE_FORMULA: // 公式
cellValue = cell.getCellFormula() + "";
break;

case HSSFCell.CELL_TYPE_BLANK: // 空值
cellValue = "";
break;

case HSSFCell.CELL_TYPE_ERROR: // 故障
cellValue = "非法字符";
break;

default:
cellValue = "未知类型";
break;
}
}
rowLst.add(cellValue);
}
津岛夜羽 2016-11-02
  • 打赏
  • 举报
回复
楼上2位。。。
鱿鱼ing 2016-11-02
  • 打赏
  • 举报
回复
引用 1 楼 qq_30831935 的回复:
org.apache.poi.hssf.usermodel.HSSFCell


HSSFCell.CELL_TYPE_NUMERIC: // 数字
鱿鱼ing 2016-11-02
  • 打赏
  • 举报
回复
org.apache.poi.hssf.usermodel.HSSFCell

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧