【发布时间】:2014-02-28 11:23:35
【问题描述】:
在我的 java 程序中,一个 java 变量 String inputDate 接受来自用户的输入。我想强制用户仅以(dd/MM/yyyy)格式输入日期,因为我的其他模块仅依赖于该格式。到目前为止,这是我尝试过的:
public class InputQuery {
private static String FLIGHT_DATE;
public String getFLIGHT_DATE() {
return FLIGHT_DATE;
}
public void setFLIGHT_DATE() {
boolean invalid = true;
Scanner sc = null;
while(invalid){
System.out.println("Enter FLIGHT_DATE(dd/MM/yyy) :");
sc = new Scanner(System.in);
FLIGHT_DATE = sc.nextLine();
if( (invalid = isValidDate(FLIGHT_DATE)) ) {
System.out.println("For Feb 21,2016 enter 21/02/2016");
}
}
sc.close();
}
private boolean isValidDate(String flight_DATE) {
SimpleDateFormat myDateFormat = new SimpleDateFormat("dd/MM/yyyy");
if( flightDate.parse(flight_DATE)){
System.out.println("accepted OK");
return true;
}
return false;
}
【问题讨论】:
-
好的。您面临的问题是什么?
-
你解析的一个并且没有捕获到异常(如果它不能解析它会抛出一个异常)并将它存储在一个变量中.. parse 方法将返回!
标签: java validation date