错误的日期正在打印
Wrong date is getting printed
我正在尝试简单地传递一个日期并使用 simpledateformat 对其进行解析。但是它没有打印正确的值,而是打印了错误的日期。
public static void main(String[] args) {
getAge("29-02-2016");
}
public static void getAge(String dob1) {
DateFormat format = new SimpleDateFormat("dd-mm-yyyy");
try {
Date dob = format.parse(dob1);
System.out.println(dob);
Calendar realDob = Calendar.getInstance();
realDob.setTime(dob);
System.out.println(realDob.get(Calendar.YEAR));
Calendar today = Calendar.getInstance();
int age = today.get(Calendar.YEAR) - realDob.get(Calendar.YEAR);
if(age >=18) {
System.out.println("18 years");
} else {
System.out.println("Underage");
}
} catch (ParseException e) {
e.printStackTrace();
}
}
它的打印:Fri Jan 29 00:02:00 IST 2016
但它应该是 February
mm
为分钟,使用MM
:DateFormat format = new SimpleDateFormat("dd-MM-yyyy");
我正在尝试简单地传递一个日期并使用 simpledateformat 对其进行解析。但是它没有打印正确的值,而是打印了错误的日期。
public static void main(String[] args) {
getAge("29-02-2016");
}
public static void getAge(String dob1) {
DateFormat format = new SimpleDateFormat("dd-mm-yyyy");
try {
Date dob = format.parse(dob1);
System.out.println(dob);
Calendar realDob = Calendar.getInstance();
realDob.setTime(dob);
System.out.println(realDob.get(Calendar.YEAR));
Calendar today = Calendar.getInstance();
int age = today.get(Calendar.YEAR) - realDob.get(Calendar.YEAR);
if(age >=18) {
System.out.println("18 years");
} else {
System.out.println("Underage");
}
} catch (ParseException e) {
e.printStackTrace();
}
}
它的打印:Fri Jan 29 00:02:00 IST 2016
但它应该是 February
mm
为分钟,使用MM
:DateFormat format = new SimpleDateFormat("dd-MM-yyyy");