【发布时间】:2016-11-22 14:27:44
【问题描述】:
我正在尝试将此时间戳值转换为日期,但它给了我错误的时间。日期正确
TimeStamp : 1423821615
True Value : Fri, 13 Feb 2015 10:00:15 GMT
Android Code shows : Fri, 13 Feb 2015 15:30:15 IST
这是我用来将时间戳转换为日期的代码。
Date dt = new Date((long)timestampInSeconds * 1000);
我也试过这段代码,但结果相同
public static Date getDateFromTimeStamp(long timestampInMilliseconds) {
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(timestampInMilliseconds);
return cal.getTime();
}
Date dt = getDateFromTimeStamp((long)timestampInSeconds * 1000);
我不知道我做错了什么。请帮忙
现在我解释整个场景。我的客户来自英国,我来自印度(提前 +5:30)。显然,他在英国创建了上午 10 点的约会。但现在我的本地 PC 中有他的数据库。我的 .NET 软件显示的时间与 SQL 服务器下图中显示的时间相同。但在手机中,它没有。 PC和手机都在同一个时区。
我使用此代码将日期转换为时间戳,并通过网络服务将此时间戳发送到移动应用
SELECT DATEDIFF(SECOND,{d '1970-01-01'}, Appointments.DateTime) AS AppointmentTimeStamp FROM Appointments
当数据库在英国时区时创建记录是否重要。或者我仍然在某个地方做错了。
【问题讨论】:
-
检查你的值,因为你有 30 分钟的差异,这不是时区问题。
-
这不是 30 分钟的差异。 5小时30分钟
-
@AxelH O'RLY
-
@Selvin,好吧,我不知道 ^^
India: UTC +5:30
标签: android