Comment définir une année de BCE en utilisant GregorianCalendar
-
25-09-2019 - |
Question
J'ai une mission qui convertit les dates d'un système de calendrier à un autre.
La documentation GregorianCalendar semble suggérer que vous peut dates d'utilisation avec des années de BCE, mais je ne sais pas comment. Si je fais simplement l'année négative, à savoir
GregorianCalendar cal = new GregorianCalendar(-20, 1, 2, 3, 0, 0);
System.out.println(cal.getTime.toString());
Il imprime 'Sun 2 février 03:00:00 GMT-05: 00 21', ce qui est nettement correcte
.La solution
Vous devez définir l'ERA en Colombie-Britannique (BC est un champ statique sur GregorianCalendar ).
La norme calendrier (grégorien) dispose de 2 ères, BC et AD.
http://java.sun.com /j2se/1.4.2/docs/api/java/util/GregorianCalendar.html
par exemple.
calendar.set(Calendar.ERA, GregorianCalendar.BC);
Autres conseils
La documentation de ce qui peut être trouvé: http://java.sun.com/j2se/1.4.2/docs/api/java/util/Calendar.html#ERA
Il montre Calendar.ERA
et comment les deux GregorianCalendar.AD
et GregorianCalendar.BC
peuvent être utilisés