Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
System.currentTimeMillis exchange Java软件和Android_Java_Android_Database_Timezone_Derby - Fatal编程技术网

System.currentTimeMillis exchange Java软件和Android

System.currentTimeMillis exchange Java软件和Android,java,android,database,timezone,derby,Java,Android,Database,Timezone,Derby,我尝试在java软件和android工具之间交换信息。我将System.currentTimeMillis()从我的android工具放到Derby数据库中。 我在UTC-4 关于软件: 当时间是2016年8月9日08:32:32时 长是:1470745952393 这意味着2016年8月9日12:32:32 UTC 在Android上 显示时2016年8月9日08:44:37 它保存了1470732277580 这意味着对于我的时区,2016年8月9日04:44:37 有人有解释吗?您的软件区

我尝试在java软件和android工具之间交换信息。我将
System.currentTimeMillis()
从我的android工具放到Derby数据库中。 我在UTC-4

关于软件:
当时间是2016年8月9日08:32:32时 长是:
1470745952393

这意味着
2016年8月9日12:32:32 UTC

在Android上
显示时
2016年8月9日08:44:37
它保存了
1470732277580

这意味着对于我的时区,
2016年8月9日04:44:37


有人有解释吗?

您的软件区域设置与设备上的不同。检查两个设备:

java.util.TimeZone.getDefault()


看看它会返回什么。

在android上:id=GMT,offset=0,dststavings=3600000,useDaylight=false。。。和软件:d=“美国/纽约”,偏移量=-18000000,是的。好了。两个时区是不同的,因此长的解释是不同的。可能的解决方案是格式化日期:
DateFormat df=DateFormat.getDateInstance(DateFormat.SHORT,您的语言环境);字符串formattedDate=df.format(yourDate)8+4=12,8-4=4=>您使用的是UTC-4,Android工具正在使用UTC。