formato años ac / ac diferente
Pregunta
Me gustaría para mostrar, por ejemplo, 31-12-1999 por años de CA y 31-12 - (-) 2000 años antes de Cristo. Pasé algún tiempo con, por ejemplo de la API de joda algo como:
new DateTimeFormatterBuilder().appendYear(4, 10).appendLiteral("-").appendMonthOfYear(2).appendLiteral("-").appendDayOfMonth(2).toFormatter();
pero no puedo encontrar ningún detalle acerca de este deseo específico.
Solución
En el caso de AD:
new DateTimeFormatterBuilder() .appendDayOfMonth(2).appendLiteral("-") .appendMonthOfYear(2).appendLiteral("-") .appendYear(4, 10).toFormatter();
En el caso BC:
new DateTimeFormatterBuilder() .appendDayOfMonth(2).appendLiteral("-") .appendMonthOfYear(2).appendLiteral("-(-)") .appendYear(4, 10).toFormatter();
A continuación, escriba una sentencia if antes de formatear.
Si desea una sola formateador para hacer esto se puede implementar DateTimePrinter
y luego añadir que a DateTimeFormatterBuilder
.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow