java判断string 能否转换成 date ,并将字符串转化为日期

  • Post author:
  • Post category:java


/**
 * 判断string 能否转换成 date - 待测试 20160815 by Caijl
 *
 * @param str
 * @return
 */
public static boolean isValidDate(String str) {
   boolean convertSuccess = true;
   // 指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;
   SimpleDateFormat formatDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   try {
      formatDateTime.parse(str);
      convertSuccess = true;
      return convertSuccess;
   } catch (ParseException e) {
      // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
      convertSuccess = false;
   }

   SimpleDateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");
   try {
      formatDate.parse(str);
      convertSuccess = true;
      return convertSuccess;
   } catch (ParseException e) {
      // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
      convertSuccess = false;
   }
/**
 * String 转换成 Date
 *
 * @param string
 *            经过 isValidDate 检验过的格式
 * @return
 * @throws ParseException
 */
public static Date convertStringToDate(String string) throws ParseException {
   try {
      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      return sdf.parse(string);
   } catch (ParseException e) {
      SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
      return sdf.parse(string);
   }
}
   return convertSuccess;
}

转载于:https://my.oschina.net/hycky/blog/806898