根据当前时区将UTC日期时间显示为日期时间

根据当前时区将UTC日期时间显示为日期时间,第1张

根据当前时区将UTC日期/时间显示为日期/时间

尝试使用

TimeZone.getDefault()
代替
TimeZone.getTimeZone("GMT")

从文档:

…您使用getDefault得到一个TimeZone,它根据程序运行的时区创建一个TimeZone。

编辑:您可以使用SimpleDateFormat解析日期(那里的格式字符串上也有文档)。在您的情况下,您想做(未测试):

 // note that I modified the format string slightly SimpleDateFormat fmt = new SimpleDateFormat("yyyy/MM/dd'T'HH:mm:ss'Z'"); // set the timezone to the original date string's timezone fmt.setTimeZone(TimeZone.getTimeZone("GMT")); Date date = fmt.parse("1998/12/21T13:29:31Z", new ParsePosition(0)); // then reset to the target date string's (local) timezone fmt.setTimeZone(TimeZone.getDefault()); String localTime = fmt.format(date);

或者,使用两个单独的SimpleDateFormat实例,一个用于原始实例,一个用于目标时间。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5439561.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存