java – 工厂设置Jodatime – 在哪里可以找到具体的历史转换日期
我使用
Joda time软件包计算Android应用程序/活动中两个历史实例之间的持续时间.这两个例子可能发生在19世纪的俄罗斯(朱利安历法系统 – 在俄罗斯采用公历系统之前)和20世纪西欧历史系统(格里高利历).
不便之处在于,我现在必须根据我对特定国家实际转换日期的了解来选择Julian或Gregorian年代表.这些单独的转换日期可以在维基百科或文献中找到. 在我看来,我的问题有三种解决方案: 1)查看文献中所有国家的所有转换日期.然后手动打入各个时区的特定切换日期/时间.并使用GJChronology.getInstance(zone,factorySettingCutoverDateTimeMillis,4)中的出厂设置,其中factorySettingCutoverDateTimeMillis是一个long,包含特定实例在特定DateTimeZone区域中发生Julian和Gregorian日历之间切换时特定实例的毫秒值. 2)确定特定转换日期最终位于Jodatime(或其他可在Android中访问)的位置,然后使用它们. 3)使用dafault GJChronology.getInstance(zone,null,4)指定1582年10月的默认日期(对许多国家而言都是正确的,但不是全部). 解决方案1)是可能的,但需要一些手工劳动来实现.解决方案2是最好的,而解决方案3)是我现在使用GJChronology中的默认值或选择Julian或Gregorian,如果我知道当时使用的特定日历系统. 我希望得到帮助,以获得解决方案2)或获得帮助,以指导我在线编制最佳编译的切换日期/时间列表,以节省工作实施解决方案1).谢谢你的帮助. 解决方法
我不相信Joda Time在其中有这些信息 – 我当然没有遇到过它. Joda Time中并不存在“国家”的概念,而且转换也不一定与时区相关.我相信这排除了解决方案2.
我不知道这些信息的任何官方来源 – 我不相信它在Unicode CLDR中,例如……但this page对您有用吗?我不知道它完整性的可靠性,但我想这是一个开始:) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |