Date-Arithmetik (Zeiten in UTC umrechnen)!

Hallo.
Ich will einen „TimeZoneConverter“ schreiben, wo ich
als Input ein Datum und eine Zeit bekomme und die
GMT-Differenz. Aus diesen Inputs will ich eine Ausgabe
erzeugen, was die Zeit in UTC umrechnet. Was bietet mir
JAVA in dieser Hinsicht an?
Wie kann man „Zeit-Arithmetik“ betreiben? Wo sind die Methoden
(z.B. 23:30 05.02.02 + 1 Std. ==> 0:30 06.02.02)!
Vielen Dank

Wie kann man „Zeit-Arithmetik“ betreiben? Wo sind die Methoden
(z.B. 23:30 05.02.02 + 1 Std. ==> 0:30 06.02.02)!
Vielen Dank

Hallo!

java.util.Calendar bietet genau solche Funktionalität.

Allgemein wirst du alles, was mit Internationalität zu tun hat (also Daten, Sprachkrams, etc.) in java.util.* finden, sowie Formatierungklassen in java.text.*

Viel Spaß damit,
Stefan :smile:

Zu komplex!
Hallo Stefan,
danke für Deinen Tipp. Aber ich komme nicht mit diesen
Methoden zurecht!!! Eigentlich möchte ich ganz einfache
Operationen durchführen. Folgende Params stehen mir
zur Verfügung:

  • DateTime im Format: 0802021015
  • Ich bekomme auch dir Angabe (pm oder am)
  • desweiteren bekomme ich die Zeitzone GMT +2

nun will ich ganz einfach dieses manipulieren.
Z.B. myDate -2Tage
oder myDate -2Tage, -3Monate, -5 Jahre
oder myDate -10Std, -20Minuten

So…wie kann ich das erreichen?
Kennst Du eine gute Bibliothek die das einfach tut?
(Params entgegennehmen, ausrechnen, zurückliefern?)
Danke
Gruss, Fabian

Hallo Fabian!

danke für Deinen Tipp. Aber ich komme nicht mit diesen
Methoden zurecht!!!

Vielleicht hilft dir ja das hier, ein paar Dinge besser zu verstehen, auch in Bezug auf die „TimeZone“-Klasse:

http://www.torsten-horn.de/techdocs/java-date.htm

Eigentlich möchte ich ganz einfache
Operationen durchführen.
Z.B. myDate -2Tage

import java.util.\*;
...
Calendar cal = new GregorianCalendar( Locale.GERMANY );
cal.setTime( myDate );
cal.add( Calendar.DAY\_OF\_MONTH, -2 );
myDate = cal.getTime();

oder myDate -2Tage, -3Monate, -5 Jahre

cal.add( Calendar.DAY\_OF\_MONTH, -2 );
cal.add( Calendar.MONTH, -3 );
cal.add( Calendar.YEAR, -5 );

oder myDate -10Std, -20Minuten

cal.add( Calendar.HOUR\_OF\_DAY, -10 );
cal.add( Calendar.MINUTE, -20 );

Kennst Du eine gute Bibliothek die das einfach tut?

Das findest du nicht einfach genug?? Ich kenne jedenfalls keine einfachere API dafür als die Java-API. Da ist nunmal wirklich alles grundlegend wichtige schon dabei:

http://java.sun.com/j2se/1.3/docs/api/index.html

Gruß,
Stefan