SimpleDateFormat problems with 2 year date
I'm trying to understand two things:
Why doesn't the following code throw an exception (since the
SimpleDateFormat is not lenient)
It doesn't throw an exception, but why is it parsing the year as 0013
(instead of using the rules here the +80:-20 years from today rule)
Here's the code
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TestDate {
public static void main(String[] args) throws Exception {
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
format.setLenient(false);
Date date = format.parse("01/01/13");
System.out.println(date); // Prints Sun Jan 01 00:00:00 GMT 13
Calendar cal = Calendar.getInstance();
cal.setTime(date);
System.out.println(cal.get(Calendar.YEAR)); // Prints 13
}
}
If it makes a difference, I'm using java 1.6.0_38-b05 on Ubuntu
No comments:
Post a Comment