将Java日历的时区设置为设备时区?

3

如何使用getInstance(TimeZone)构造日历对象以使用设备的时区?

1个回答

3
根据这个问题,只需使用:
Calendar calendar = Calendar.getInstance();

这将为您提供用户默认时区(根据其设置)。您可以通过以下方式从日历中确定时区:

TimeZone zone = calendar.getTimeZone();

其他帖子建议不要使用 TimeZone.getDefault() 来获取用户默认的时区 - 尽管我个人不清楚这一点,但这是另一个可以考虑的选项。


那么是这样的 Calendar calendar = Calendar.getInstance(Calendar.getInstance().getTimeZone()); 吗? - LuxuryMode
@LuxryMode:不需要,只要使用Calendar.getInstance()即可 - 它已经获取了正确的时区,为什么还需要创建另一个呢? - Jon Skeet
哦,好的。我以为它会有一些默认时区,在每个设备上可能不正确。 - LuxuryMode

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接