When converting back to a Date from a formatted date string, SimpleDateFormat returns incorrect Date. Test code:
import java.util.*;
import java.text.SimpleDateFormat;
public class DateTest {
public static void main(String []args) throws Exception {
SimpleDateFormat formatter = new SimpleDateFormat("EEEE dd MMMM YYYY hh:mm:ssa");
System.out.println("Week Year Support: " + formatter.getCalendar().isWeekDateSupported());
Date origDate = new Date(120, 1, 1);
String dateStr = formatter.format(origDate);
Date reverseDate = formatter.parse(dateStr);
System.out.println(origDate + "\t" + dateStr + "\t" + reverseDate);
}
}
Output:
Week Year Support: true
Sat Feb 01 00:00:00 UTC 2020 Saturday 01 February 2020 12:00:00AM Sat Jan 04 00:00:00 UTC 2020