【发布时间】:2021-11-08 19:19:00
【问题描述】:
我正在为一家埃塞俄比亚公司开发 Android 应用程序,并且必须处理日期。
埃塞俄比亚使用的日历与公历类似,但有两个主要区别:它设置为大约 10 分钟。 7年前,有13个月。 在我发布此问题时,公历日期为 13-09-2021,埃塞俄比亚日历日期为 03-01-2014。
我的问题是:
-
Android 是否支持埃塞俄比亚日历?埃塞俄比亚人是否习惯让他们的设备使用它?
-
如果是这样,我是否必须获取默认格式化程序(使用默认日历:
Calendar.getInstance())才能正确格式化日期? -
相反,如果设备使用公历,Java 如何支持转换为埃塞俄比亚日期?
为了模拟完整的场景,你会建议什么设备设置正确的当前埃塞俄比亚日期(好像来自网络提供商)和区域设置?
【问题讨论】:
-
通过一些快速的谷歌搜索,埃塞俄比亚日历基于科普特日历,我在这里找到了文档:developer.android.com/reference/android/icu/util/CopticCalendar。这有帮助吗?
-
除了今天的埃塞俄比亚日期是 03.01.2014 而不是 03.09.2014。我在 3 天前庆祝了新年 :-)
-
您可能知道这一点,但我还是要把它放在这里——我强烈建议您将日期内部保留为 UTC 时间,然后在显示它们时进行转换。这将使您的应用程序更容易调试,并且与它可能需要使用的第三方应用程序更兼容。将展示的想法与存储分开。
-
@qwlice 即使在今天,埃塞俄比亚的埃塞俄比亚人也使用埃塞俄比亚历法。在官方文件、报纸、电视等中,仅使用埃塞俄比亚日历。在商业领域,尤其是在科技领域,工作语言是英语,大多数埃塞俄比亚人都知道公历,并且每天都会专业地使用它。另一方面,厄立特里亚自独立以来就采用了公历。在厄立特里亚,埃塞俄比亚日历只供老年人和教堂使用。对于我和欧洲的其他人来说,这只是作为庆祝圣诞节和新年两次的理由。
-
除非日期和时间在您的应用程序中发挥重要作用,否则在我看来,从一个转换到另一个的能力是一个不错的功能,而不是必须具备的功能。请注意,埃塞俄比亚人对一天中的时间也有不同的方法。这一天不是从午夜开始,而是从早晨的日出开始。当西方世界早上 7 点吃早餐时,这只是埃塞俄比亚一天的第一个小时。
标签: java android datetime calendar