Frage

Ich habe eine Aufgabe, die Daten von einem Kalendersystem in ein anderes umwandelt.

Die Dokumentation für Gregoriancalendar scheint darauf hinzudeuten, dass Sie kann Verwenden Sie Daten mit BCE -Jahren, aber ich habe keine Ahnung wie. Wenn ich das Jahr einfach negativ mache, dh dh

 GregorianCalendar cal = new GregorianCalendar(-20, 1, 2, 3, 0, 0);
 System.out.println(cal.getTime.toString());

Es druckt 'Sonne Feb 02 03:00:00 GMT-05: 00 21' heraus, was eindeutig nicht korrekt ist.

War es hilfreich?

Lösung

Sie müssen die ERA auf BC einstellen (BC ist ein statisches Feld an Gregorianischer Kalender).

Der Standardkalender (Gregorianer) hat 2 Epochen, BC und AD.

http://java.sun.com/j2se/1.4.2/docs/api/java/util/gregoriancalendar.html

z.B

calendar.set(Calendar.ERA, GregorianCalendar.BC);

Andere Tipps

Die Dokumentation hierfür findet sich: http://java.sun.com/j2se/1.4.2/docs/api/java/util/calendar.html#era

Es zeigt Calendar.ERA und wie beides GregorianCalendar.AD und GregorianCalendar.BC kann verwendet werden

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top