我对 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/