Java 忽略时区差异的时差

Java 忽略时区差异的时差,java,time,Java,Time,我得到了2个时间值1unit==1sec(来自时间戳),例如客户机认为时间是1308598131,服务器认为时间是1308594548,两者相差3583 在现实世界中,服务器时区比客户端晚1小时。我正在寻找一些简单的代码(java pref在android上工作,但如果需要,我可以翻译其他语言:)来计算“真实”差异,在本例中为-14,例如客户端比服务器晚14秒 如果服务器在同一时区,或者客户端比服务器提前1小时,它就需要工作(如果它能应付超过1小时的时间,那就好了,但目前我认为英国以外的人都不会

我得到了2个时间值1unit==1sec(来自时间戳),例如客户机认为时间是1308598131,服务器认为时间是1308594548,两者相差3583

在现实世界中,服务器时区比客户端晚1小时。我正在寻找一些简单的代码(java pref在android上工作,但如果需要,我可以翻译其他语言:)来计算“真实”差异,在本例中为-14,例如客户端比服务器晚14秒

如果服务器在同一时区,或者客户端比服务器提前1小时,它就需要工作(如果它能应付超过1小时的时间,那就好了,但目前我认为英国以外的人都不会玩这个游戏:)

问候 西蒙

答案是让我的客户机将其本地时间转换为UTC(服务器在UTC上)——我的代码就是这样结束的-

            android.text.format.DateFormat df = new android.text.format.DateFormat();
        long scTM = System.currentTimeMillis();
        scTM = scTM - TimeZone.getDefault().getOffset(scTM);
        String launchTime = DateFormat.format("yyyyMMddkkmmss", scTM).toString();

客户端和服务器是否返回各自的本地时间?如果可能的话,您能让他们返回UTC时间,然后您就可以一对一地进行交易,而不必担心时区、夏令时等问题。就差异而言?

客户端和服务器是否返回各自的本地时间?如果可能的话,你能让他们返回UTC时间,然后你就可以一个苹果一个苹果地交易,而不必担心时区、夏令时等。就差异而言?

你是如何获得这些时间戳的?在javascript中,是否有一个“合理”的窗口,其差异仅限于此?例如,与服务器位于同一时区的客户机是否会落后服务器一小时?您是如何获得这些时间戳的?在javascript中,是否有一个“合理”的窗口,其差异仅限于此?例如,与服务器位于同一时区的客户机是否会落后服务器一小时?您刚才说的原因是您无法计算:)当然,您的解决方案更简单、更优雅。:)Ta你只是说,因为你不会做数学:)当然,你的解决方案更简单、更优雅。:)助教