码上敲享录 > java入门知识分享 > java导入excel很完美的取值的方法

java导入excel很完美的取值的方法

上一章章节目录下一章 2017-11-30已有4570人阅读 评论(0)

java导入excel很完美的取值的方法

1.解决方法:

/**
   * 获取单元格数据内容为字符串类型的数据
   * @param cell Excel单元格
   * @return String 单元格数据内容
   */
  private  String getStringCellValue(Cell cell,String format) {
      String strCell = "";
      switch (cell.getCellType()) {
          case XSSFCell.CELL_TYPE_STRING:
              Pattern p = Pattern.compile("^[0-9]{4}[\\.\\-/](0?[1-9]|1[0-2])[\\.\\-/](0?[1-9]|[1-2][0-9]|3[0-1])$");  
              Matcher m = p.matcher(cell.getStringCellValue());  
              boolean b = m.matches();  
              if(b)  
              {  
                  strCell=cell.getStringCellValue().replaceAll("[\\./]", "-");
              }  
              else
              {  
                  strCell = cell.getStringCellValue();
              }  
              break;
          case XSSFCell.CELL_TYPE_NUMERIC:
              if (DateUtil.isCellDateFormatted(cell)) {
                  //  如果是date类型则 ,获取该cell的date值
                  strCell = new SimpleDateFormat(format).format(DateUtil.getJavaDate(cell.getNumericCellValue()));
              } else { // 纯数字
                  cell.setCellType(Cell.CELL_TYPE_STRING);
                  strCell = String.valueOf(cell.getStringCellValue());
              }
                  break;
          case XSSFCell.CELL_TYPE_BOOLEAN:
              strCell = String.valueOf(cell.getBooleanCellValue());
              break;
          case XSSFCell.CELL_TYPE_BLANK:
              strCell = "";
              break;
          default:
              strCell = "";
              break;
      }
      if (strCell.equals("") || strCell == null) {
          return "";
      }
      if (cell == null) {
          return "";
      }
      return strCell;

  }

2.用法:

getStringCellValue(cell,"yyyy-MM-dd");

getStringCellValue(cell,"yyyy-MM-dd HH:mm:ss");

getStringCellValue(cell,"HH:mm:ss");

本文地址:http://yayihouse.com/yayishuwu/chapter/1048

22

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交