乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > java导入excel时怎么处理日期格式-导入excel时间,excel怎么导入数据

java导入excel时怎么处理日期格式-导入excel时间,excel怎么导入数据

作者:乔山办公网日期:

返回目录:excel表格制作


在Excel中的日期格式,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171。如果使用POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理。

正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再判断单元格是否为日期格式,如果是的话,创建一个日期格式,再将单元格的内容以这个日期格式显示出来。如果单元格不是日期格式,那么则直接得到NUMERIC的值就行了。

具体代码如下:

主要是判断NUMERIC 的时候 同事判断下 单元格是不是日期格式 如果是 日期格式直接 转成日期格式字符串返回值就ok了。

if (0 == cell.getCellType()) {    //判断是否为日期类型   if(HSSFDateUtil.isCellDateFormatted(cell)){   //用于转化为日期格式  Date d = cell.getDateCellValue();   DateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   str[k] = formater.format(d);  }else{   // 用于格式化数字,只保留数字的整数部分   DecimalFormat df = new DecimalFormat("########");   str[k] = df.format(cell.getNumericCellValue());   }



在Excel中的日期格式,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171。
如果使用POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理。正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再e799bee5baa6e79fa5e98193e59b9ee7ad94334判断单元格是否为日期格式,如果是的话,
创建一个日期格式,再将单元格的内容以这个日期格式显示出来。如果单元格不是日期格式,那么则直接得到NUMERIC的值就行了。具体代码如下:

if (0 == cell.getCellType()) {

//判断是否为日期类型

if(HSSFDateUtil.isCellDateFormatted(cell)){
//用于转化为日期格式

Date d = cell.getDateCellValue();

DateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

str[k] = formater.format(d);

}else{

// 用于格式化数字,只保留数字的整数部分

DecimalFormat df = new DecimalFormat("########");

str[k] = df.format(cell.getNumericCellValue());

}


可以统一当字符串处理,进行非空判断。SimpleDateFormat 应该有根据 固定格式将字符串转为对应时间的方法。
SimpleDateFormat s1 = new SimpleDateFormat("yyyyMMddHHmm");

s1.parse("201")

相关阅读

  • -qc导入excel,excel怎么导入数据

  • 乔山办公网excel表格制作
  • 在查询分析e799bee5baa6e997aee7ad94e59b9ee7ad94331器里,直接写 SQL语句:如果是导入数据到现有表,则采用INSERT INTO 表 SELECT * FROM OPENROWSET(MICROSOFT.JET.OLEDB.4.0,Excel 5.0;HDR=Y
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网