zoukankan      html  css  js  c++  java
  • java导入excel很完美的取值的方法

    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 = newSimpleDateFormat(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");

  • 相关阅读:
    快来使用Portainer让测试环境搭建飞起来吧
    ReviewBoard安装记录(CentOS5)
    awk中的NR,FNR ,NF,$NF,RS,ORS,FS,OFS
    Argument list too long解决办法
    Jenkins插件开发(6.3)—— 追踪jenkinscli.jar
    AWK中如何按列求和
    JIRA中显示中文显示为乱码“口口口”的解决方式(CentOS)
    Jenkins常用插件记录
    Jenkins插件开发(6.4)—— 分析CLI源码
    Jenkins插件开发(6.2)—— 如何自定义CLI命令
  • 原文地址:https://www.cnblogs.com/chinaifae/p/10189951.html
Copyright © 2011-2022 走看看