In fact, many time zones give a strange result until October 1979. I suggest you look at Joda's time if you want an accurate historical time zone.
The worst day, apparently, January 1, 1900. Try
Calendar calendar = new GregorianCalendar(1900, 1, 1, 0, 0);
Date date2 = calendar.getTime();
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
System.out.println("Time in UTC is " + date2);
for (String tz : TimeZone.getAvailableIDs()) {
TimeZone.setDefault(TimeZone.getTimeZone(tz));
String dateToString = date2.toString();
if (dateToString.contains(":00:00")) continue;
if (dateToString.contains(":30:00")) continue;
System.out.println(tz + ' ' + dateToString);
}
Until 1900, very few timeshones produce such results (perhaps inaccurate)
source
share