z Java 1.5.0_06 wersja na Windows i Ubuntu Linux:Java, dodając minut do daty, dziwne anomalia
Ilekroć dodać minut do terminu "2008/10/05 00:00:00" wydaje się, że dodatkowa godzina jest błędnie dodana.
czyli: dodawanie 360 minut 2008/10/05 00:00:00 północy powinny przybyć 2008/10/05 06:00:00
Ale to jest przybyciu 2008/10/05 07 : 00: 00
Zupełnie kłopotliwe jest to, że ten TYLKO dzieje się, gdy dzień jest 2008/10/05, wszystkie inne dni, które próbuję poprawnie wykonać dodawanie minut.
Czy zwariowałem, czy jest to błąd w Javie?
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
try {
String date = "2008/10/05 00:00:00";
int minutesToAdd = 360; // 6 hrs
Calendar cal = Calendar.getInstance();
cal.setTime(sdf.parse(date));
cal.add(Calendar.MINUTE, minutesToAdd);
System.out.println(cal.getTime());
} catch (ParseException e) {}
Aha - wielkie umysły myślą podobnie - +1 :-) – toolkit
Hehehe, tak! Tak czy inaczej, moja uwaga na temat Nowej Zelandii jest taka, że od zeszłego roku dzienne oszczędności zostały przesunięte z pierwszej niedzieli października na ostatnią niedzielę września. Ponieważ Java 5 istnieje już od jakiegoś czasu, pliki stref mogą rzeczywiście wymagać aktualizacji. –