gpt4 book ai didi

java - 将 Unix 日期从 php 转换为 Java (Android)

转载 作者:行者123 更新时间:2023-12-02 08:04:07 26 4
gpt4 key购买 nike

我使用以下代码行来转换从 php 文件返回的 unix 时间,但日期显示不正确:

int unixTime = new Integer( inputjson[2].getString((Integer) x.get(j)) ).intValue(); 
long timestamp = unixTime * 1000; // msec
java.util.Date d = new java.util.Date(timestamp);

以下是 php 文件的摘录:

date_default_timezone_set('America/New_York');
while($row1 = mysql_fetch_array($result1)) {
$output1[]=$row1['text'];
$temp = $row1['dateOfStatus'];
$d = strtotime($temp);
$output5[] = $d;
}

我已确认数据库中的 dateOfStatus 字段正确。但是,当我在 java 中取回该值并进行转换时,日期已关闭:即今天晚上 11:11 返回:TUE Jan 06 05:41:12 EST 1970

我不确定出了什么问题。

有人熟悉这个问题吗?

最佳答案

这段代码是错误的:

long timestamp = unixTime * 1000;

unixTime 是一个 10 位整数,当乘以 1000 时,结果超出了最大整数,因此 unixTime * 1000 得到错误的结果。您应该将 unixTime 转换为 long,如下所示:

long unixTime = Long.parseLong(inputjson[2].getString((Integer) x.get(j)));

关于java - 将 Unix 日期从 php 转换为 Java (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8440978/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com