1

我的 android 应用程序正在从我的服务器获取一些 json 数据。json 文件包含一个时间戳值,表示当前日期,在 PHP 中计算如下:

mktime(0,0,0,date('m'),date('d'),date('Y'))

即,我在 00:00 Hrs 获得了 unix 时间戳,并用它来表示特定的一天。

现在,在 android 端,解析文件并将文件时间戳与 Java 时间戳进行比较,计算如下:

GregorianCalendar aDate = new GregorianCalendar();

GregorianCalendar tDate = new     
GregorianCalendar(aDate.get(Calendar.YEAR),aDate.get(Calendar.MONTH),   
aDate.get(Calendar.DAY_OF_MONTH));

today = (tDate.getTimeInMillis())/1000; 

很明显,我正在尝试以与 PHP 相同的方式计算 Java 中的时间戳。但是,奇怪的是,Java 也考虑了当前时间。例如,在 Android 模拟器上,时区不同(比我的本地时间晚一小时),我得到的时间戳值与 PHP 中计算的值相差 3600 秒。当我在 Android 上更改时区时模拟器,我没问题。这是一个Java错误吗?

4

0 回答 0