android - 在澳大利亚项目中使用 JodaTime

标签 android timezone jodatime

我对 Android 有点陌生,但听取了许多程序员的建议,在我的项目中使用 JodaTime 进行所有时间计算。但是我似乎无法使用 JodaTime 将 UTC 时间转换为澳大利亚时区。我应该为澳大利亚重新编译 JodaTime 吗?如果是这样,怎么办? 我尝试使用 DateTimeZone.getAvailableIds() 函数,但返回的数组未列出任何澳大利亚时区。

有人可以解释一下我需要做什么吗?我将不胜感激? 谢谢

最佳答案

为了回答您的最终评论,如果您只想过滤以澳大利亚(或 UTC)开头的时区,您可以使用:

// Easier with Guava, but you might not want another dependency
List<DateTimeZone> zones = new ArrayList<DateTimeZone>();
for (String id : DateTimeZone.getAvailableIds()) {
    if (id.startsWith("Australia/")) {
        zones.add(DateTimeZone.forID(id));
    }
}
zones.add(DateTimeZone.UTC);

(显然,如果您只想要 ID,则需要将其设为 List<String> 并使用 zones.add(id) 。)

关于android - 在澳大利亚项目中使用 JodaTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9562603/

相关文章:

java - java的console.log()是什么?

android - 如何在模块中添加 View 模型?

java - 如何在java中获取IANA格式的时区?

c# - 在 C# 中使用夏令时处理时区

java - UTC 时间戳 + Joda 时间

java - 根据用户的本地时区在特定时间执行日常操作

java - Robolectric Resources$NotFoundException 找不到库 (aar) 资源

Android Media Recorder 启动失败异常

java - 将数据库时间转换为 IST 日期时间

java - 如何使用 Jodatime 列出给定月份的所有日期