判断一个字符串能不能转化成时间格式

时间:2023-01-07 11:26:59

采用SimpleDateFormat类的parse方法进行判断,如果转换不成功,就会出现异常,

具体代码如下:

 1 package com.test01;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 
 6 public class test03 {
 7 
 8     public static void main(String[] args) {
 9         System.out.println(isValidDate("2018/12/12 02:02:12"));
10     }
11     
12      public static boolean isValidDate(String str) {
13          boolean convertSuccess=true;
14          // 指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;
15          SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
16          try {
17                //设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,比如2007/02/29会被接受,并转换成2007/03/01
18             format.setLenient(false);
19             format.parse(str);
20          } catch (ParseException e) {
21             // e.printStackTrace();
22               // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
23             convertSuccess=false;
24          } 
25          return convertSuccess;
26      }         
27 }