SimpleDateFormat.parse可以验证哪种日期格式
时间: 2023-03-21 13:03:09 浏览: 100
SimpleDateFormat.parse可以验证各种日期格式,包括yyyy-MM-dd、yyyy/MM/dd、dd/MM/yyyy、yyyy.MM.dd等等格式。只要日期字符串符合SimpleDateFormat指定的格式,就可以被正确解析。但需要注意的是,如果日期字符串与SimpleDateFormat指定的格式不匹配,将会抛出ParseException异常。
相关问题
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class BusinessLeave { public static String application(String location,String phonenum,String start,String end,String mode,String number) throws ParseException{ String msg=""; if(ValidLocation(location)){ if(ValidPhoneNum(phonenum)){ if(ValidSDate(start)&&ValidEDate(end,start)){ if(mode=="自驾"||mode=="火车"||mode=="飞机"){ if(ValidNum(number)) msg="提交申请"; else msg="同行人数无效"; }else msg="出行方式未选择"; }else msg="日期无效"; }else msg="联系电话无效"; }else msg="出差地无效"; return msg; } public static boolean ValidLocation(String a){ if(a!=null&&a.length()>0) return true; else return false; } public static boolean ValidPhoneNum(String num){ String regex="^1[3|4|5|7|8][0-9]{9}$"; if(num.matches(regex)) return true; else return false; } public static boolean ValidNum(String num){ String regex="[0-9]+"; if(num.matches(regex)&&Integer.valueOf(num)>0) return true; else return false; } public static boolean ValidSDate(String s) throws ParseException{ Date start=new SimpleDateFormat("yyyy-MM-dd").parse(s); Date now=new Date(); if(start.after(now)==true) return true; else return false; } public static boolean ValidEDate(String e, String s) throws ParseException{ Date start=new SimpleDateFormat("yyyy-MM-dd").parse(s); Date end=new SimpleDateFormat("yyyy-MM-dd").parse(e); Calendar c = Calendar.getInstance(); c.setTime(start); c.add(Calendar.DAY_OF_MONTH, 30); Date deadline=c.getTime(); if(end.after(start)==true&&end.before(deadline)==true) return true; else return false; } }
这是一个 Java 类 BusinessLeave,它包含了一个 application 方法和多个静态方法用于验证输入参数的合法性。application 方法接收六个参数:location(出差地点)、phonenum(联系电话)、start(出发日期)、end(返回日期)、mode(出行方式)和 number(同行人数),并返回一个提示信息 msg,用于指示申请是否提交成功。
在 application 方法中,首先通过调用 ValidLocation、ValidPhoneNum、ValidSDate 和 ValidEDate 方法来验证输入参数的合法性;如果所有参数都合法,则根据出行方式和同行人数的合法性来决定 msg 的值。如果出行方式不合法,则 msg 为 "出行方式未选择";如果同行人数不合法,则 msg 为 "同行人数无效";否则 msg 为 "提交申请"。
ValidLocation、ValidPhoneNum、ValidSDate 和 ValidEDate 方法分别用于验证出差地点、联系电话、出发日期和返回日期的合法性。其中 ValidLocation 方法只需判断出差地点是否为 null 或空字符串即可;ValidPhoneNum 方法使用正则表达式来判断联系电话是否合法;ValidNum 方法用于验证同行人数的合法性,只需判断其是否为正整数即可;ValidSDate 和 ValidEDate 方法使用 SimpleDateFormat 类将输入的日期字符串转换为 Date 对象,然后与当前日期或出发日期进行比较来判断其合法性。
总体来说,这是一个用于验证出差申请参数合法性的简单 Java 类。
SimpleDateFormat校验日期格式
SimpleDateFormat可以用于校验日期格式。在代码引用中,通过SimpleDateFormat的parse方法将输入的字符串解析成日期格式。如果解析成功,则说明输入的字符串符合指定的日期格式;如果解析失败,则说明输入的字符串不符合要求的日期格式。在代码中,通过设置Lenient属性为false来严格解析日期,避免出现不符合要求的日期格式被解析成另外的日期。如果解析过程出现异常,即抛出异常错误信息,说明输入的时间格式错误。所以,可以利用SimpleDateFormat的parse方法来校验日期格式。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [详解Java中格式化日期的DateFormat与SimpleDateFormat类](https://download.csdn.net/download/weixin_38670391/12797595)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [SimpleDateFormat判断字符串是否符合日期格式](https://blog.csdn.net/qq_38227085/article/details/118875838)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [【验证用户输入的日期格式是否正确——工具类SimpleDateFormat类的使用】](https://blog.csdn.net/qq_45891676/article/details/126021082)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
阅读全文