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

回到顶部