[Java] java.text.SimpleDateFormat#parse werkt niet goed?

Pagina: 1
Acties:

  • Robtimus
  • Registratie: November 2002
  • Laatst online: 27-05 21:44

Robtimus

me Robtimus no like you

Topicstarter
Ik ben bezig geweest met bovengenoemde method, maar hij werkt niet helemaal zoals het hoort ik het wil.

Wat ik deed:
Java:
1
2
SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
Date date = format.parse(<tijds string>);
Lijkt in orde, maar het aantal milliseconden in de Date is precies 1 uur te weinig. Dus invoer "18:00:00" geeft terug een Date object dat gelijk staat aan 17:00:00.

Als ik die Date in een Calendar object stop klopt het precies, maar zodra ik er zelf mee ga rekenen dan klopt het weer niet:
Java:
1
2
3
4
5
6
long time = date.getTime();
System.out.println(time);
System.out.println(time / 3600000);
System.out.println((time / 60000) % 60);
System.out.println((time / 1000) % 60);
System.out.println(time % 1000);
Dit levert op 61200000, 17, 0, 0 en 0.

Of komt dit door de tijdzone??

More than meets the eye
There is no I in TEAM... but there is ME
system specs


  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Heb je al geprobeerd de tijdzone te veranderen en te kijken wat er dan uitkomt?

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
en ik zou via Calender werken. GregorianCalender heeft alles wat je nodig hebt, inclusief parse en locale functies.

  • Robtimus
  • Registratie: November 2002
  • Laatst online: 27-05 21:44

Robtimus

me Robtimus no like you

Topicstarter
zneek schreef op 30 januari 2004 @ 23:44:
en ik zou via Calender werken. GregorianCalender heeft alles wat je nodig hebt, inclusief parse en locale functies.
Ja daar was ik ook achter, ik ga al mijn eigen tijdgerelateerde klassen gewoon weggooien. Ze kunnen niet meer dan Calendar en subklassen.

More than meets the eye
There is no I in TEAM... but there is ME
system specs


  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 22:34
enne, IceManX, unix time stamp is UTC (GMT)! Kortom, het houd geen rekening met zomer/wintertijd.

Dus zoals zneek al zegt, vraag gewoon de verschillende tijdselementen aan Calendar

[ Voor 70% gewijzigd door Jelmer op 31-01-2004 12:37 ]