Java中格林尼治标准时间的毫秒数
我需要在格林尼治标准时间之前隐蔽毫秒(在Android应用中),例如:
1372916493000
当我通过此代码将其转换时:
Calendar cal = Calendar.getInstance();cal.setTimeZone(TimeZone.getTimeZone("GMT"));
cal.setTimeInMillis(millis);
Date date = cal.getTime();
结果是07:41 07/04/2013
。当我只使用以下结果时:
Date date = new Date(millis);
不幸的是,结果看起来不正确,看起来像我的当地时间。我尝试通过此服务转换相同的数字,结果是05:41
07/04/2013,我认为是正确的。所以我有两个小时的差异。有人有任何建议/提示我的转换有什么问题吗?
回答:
如果结果看起来不正确,System.out.println(date)
则就不足为奇了,因为Date.toString
将日期转换为本地时区中的字符串表示形式。要查看格林尼治标准时间的结果,您可以使用此
SimpleDateFormat df = new SimpleDateFormat("hh:ss MM/dd/yyyy");df.setTimeZone(TimeZone.getTimeZone("GMT"));
String result = df.format(millis);
以上是 Java中格林尼治标准时间的毫秒数 的全部内容, 来源链接: utcz.com/qa/428407.html