Pregunta

Tengo una tarea que convierte las fechas de un sistema de calendario a otro.

La documentación para Gregoriancalendar parece sugerir que pueden Use fechas con años de BCE, pero no tengo idea de cómo. Si simplemente hago el año negativo, es decir

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

Imprime 'Sol 02 de febrero 03:00:00 GMT-05: 00 21', que claramente no es correcto.

¿Fue útil?

Solución

Debe establecer la era en BC (BC es un campo estático en Calendario Gregoriano).

El calendario estándar (gregoriano) tiene 2 épocas, BC y AD.

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

p.ej

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

Otros consejos

Se puede encontrar la documentación para esto: http://java.sun.com/j2se/1.4.2/docs/api/java/util/calendar.html#era

Muestra Calendar.ERA y como ambos GregorianCalendar.AD y GregorianCalendar.BC puede ser usado

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top