java - Android 时间与 Java 时间之间的转换

标签 java android calendar

我在 Android 手机(Nexus one)和 Java 服务器之间的时间转换上遇到了一些麻烦。我读过的所有内容都说它们是相同的,但是当我转换一个很长的时间戳时,我似乎失去了 1 小时(准确)。

具体来说,如果我在 android 设备上运行以下代码,我将得到以下输出

代码:

Calendar g = Calendar.getInstance();
g.setTimeInMillis(1340661899000L);
Log.d(TAG, g.getTime().toLocaleString());

输出: 2012 年 6 月 25 日下午 6:04:59

我认为这是正确的,但是当我在 java 服务器上运行完全相同的代码时,我在同一天但提前 1 小时得到了

代码:

Calendar g = Calendar.getInstance();
g.setTimeInMillis(1340661899000L);
System.out.println(g.getTime().toLocaleString());

输出: 2012 年 6 月 25 日下午 5:04:59

有谁知道这可能是什么原因造成的?服务器和手机都位于同一个地方(这无关紧要)并且服务器盒和手机上的时钟匹配

最佳答案

考虑到相差一小时,您能否在服务器上设置 DST(夏令时)而不是在手机上设置,反之亦然?

关于java - Android 时间与 Java 时间之间的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11195820/

相关文章:

java - 在 postman 中发送 PathVariable @PostMapping

java 从 mongo db 打开文件(pdf、xsl 等...)

android - 来自 styles.xml 的 TabWidget 背景样式

Android:关闭 SQLite 数据库

c# - 如何使用 WinForms 的现有组件创建类似 Google 的日历

带有拖动选择多天的 Javascript 日历

java - 如何从方法中选择随机图像进行显示?

java - 如何在 JPA 中使用额外的 where 子句限制 ManyToMany

android - ACRA 以编程方式更改 formUri

iphone - iOS API Kal 无法与 iPhone 5 一起编译