如何使用GregorianCalendar设置一个公元前的年份。

问题描述 投票:3回答:2

我有一个任务是将日期从一个日历系统转换到另一个。

在GregorianCalendar的文档中,似乎建议你用 可以 使用BCE年的日期,但我不知道如何使用。 如果我简单地将年份变成负数,即:"Sun Feb 02 03:00 GMT-05:00 21",这显然是不正确的。

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

它打印出'Sun Feb 02 03:00:00 GMT-05:00 21',这显然是不正确的。

java date gregorian-calendar
2个回答
4
投票

你需要将ERA设置为BC (BC是一个静态字段,在日历系统中是没有的。公历(GregorianCalendar)).

标准(格里高利)历法有两个时代,即公元前和公元后。

http:/java.sun.comj2se1.4.2docsapijavautilGregorianCalendar.html。

例如

calendar.set(Calendar.ERA, GregorianCalendar.BC);
© www.soinside.com 2019 - 2024. All rights reserved.