Dalam banyak senario, kita perlu mengesahkan sama ada masa dan tarikh berada dalam format yang betul, dan sama ada masa itu mematuhi yang konvensional.
1 Sahkan tarikh dalam format yyyy-MM-dd HH:mm:dd
String date = "2020-01-25 12:36:45"; System.out.println("date "+isLegalDate(date.length(),date,"yyyy-MM-dd HH:mm:ss"));
2. Sahkan tarikh dalam format yyyy-MM-dd
String yearMonthday = "2020-01-01"; System.out.println("yearMonthday: "+isLegalDate(yearMonthday.length(),yearMonthday,"yyyy-MM-dd"));
3. Sahkan tarikh dalam format yyyy-MM
String yearMonth = "2020-02"; System.out.println("yearMonth: "+isLegalDate(yearMonth.length(),yearMonth,"yyyy-MM"));
4. Sahkan tarikh dalam format yyyy
String year = "2020"; System.out.println("year: "+isLegalDate(year.length(),year,"yyyy"));
5. mm:ss format
String hms = "12:36:89"; System.out.println("hms: "+isLegalDate(hms.length(),hms,"HH:mm:ss"));
6 Berikut ialah kelas kaedah lengkap yang boleh dijalankan terus untuk mengesahkan sama ada format tarikh adalah betul
package com.shucha.deveiface.biz.test; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; /** * @author tqf * @Description 时间格式校验 * @Version 1.0 * @since 2020-09-15 16:49 */ public class IsLegalDate { public static void main(String[] args) { //1、验证 yyyy-MM-dd HH:mm:dd 格式的日期 String date = "2020-01-25 12:36:45"; System.out.println("date "+isLegalDate(date.length(),date,"yyyy-MM-dd HH:mm:ss")); //2、验证 yyyy-MM-dd 格式的日期 String yearMonthday = "2020-01-01"; System.out.println("yearMonthday: "+isLegalDate(yearMonthday.length(),yearMonthday,"yyyy-MM-dd")); //3、验证 yyyy-MM 格式的日期 String yearMonth = "2020-02"; System.out.println("yearMonth: "+isLegalDate(yearMonth.length(),yearMonth,"yyyy-MM")); //4、验证 yyyy 格式的日期 String year = "2020"; System.out.println("year: "+isLegalDate(year.length(),year,"yyyy")); //5、验证 HH:mm:ss 格式的日期 String hms = "12:36:89"; System.out.println("hms: "+isLegalDate(hms.length(),hms,"HH:mm:ss")); } /** * 根据时间 和时间格式 校验是否正确 * @param length 校验的长度 * @param sDate 校验的日期 * @param format 校验的格式 * @return */ public static boolean isLegalDate(int length, String sDate,String format) { int legalLen = length; if ((sDate == null) || (sDate.length() != legalLen)) { return false; } DateFormat formatter = new SimpleDateFormat(format); try { Date date = formatter.parse(sDate); return sDate.equals(formatter.format(date)); } catch (Exception e) { return false; } } }
Berikut ialah tangkapan skrin selepas. pengesahan masa
Atas ialah kandungan terperinci Bagaimana untuk mengesahkan sama ada format masa adalah betul dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!