奇技淫巧:各种常用工具类

如何判断一个字段是否时时间

生产终于到了这么一个问题,在抽数中,要判断一个offset是否时时间格式,如果是则触发某一种操作,如果不是,则忽略。问题在于,时间格式有多种多样,如何有效判断是否时时间呢。其中一个解决方案如下所示:

import org.apache.commons.lang.time.DateUtils
// 或者使用lang3
 /**
   * 判断字符串是否时时间
   *    考虑到公司实际情况,被允许的格式时有限的,如遇到其他情况请另行修改
   * @param str
   * @return
   */
  def isDate(str: String): Boolean ={
    try{
      val formatArr: Array[String] = Array("yyyy-MM-dd HH:mm:ss.S","yyyy-MM-dd HH:mm:ss","yyyy-MM-dd","yyyyMMdd","yyyy/MM/dd")
      // apache commons lang3
      DateUtils.parseDate(str, formatArr)
      true
    }catch {
      case e: Exception =>
        false
    }
  }
posted @ 2021-09-27 15:09  手心里的宇宙  阅读(55)  评论(0编辑  收藏  举报