我有一个Rest服务,它接收一个JSON对象。此JSON中包含时间戳值。当我将JSON对象转换为Java类时,我使用一个long变量(我稍后使用new Date(long)
来获取正确的日期对象)来获取时间戳。一切都工作正常,因为客户端(在Java和JS中)发送时间戳的时间很长。
现在我们正在为服务添加一个Python客户端,我正在尝试从Python发送时间戳。但是Python中的time.time()方法总是给出一个浮点数。所以我决定在我的Rest Service的Java类中使用一个double变量,我正确地得到了时间戳。但是,我如何将其转换为Date
对象。有什么想法吗?
答案 0 :(得分:4)
所以查看文档(以前从未使用过Python)看起来像time.time()方法returns seconds since the epoch,而Java Date对象在其构造函数中需要milliseconds from the epoch。
所以你需要做一些花哨的数学运算才能让双人成长。从我刚刚阅读的一些Python文档来看,似乎更容易将Python代码中的秒转换为毫秒,并将结果作为long发送给其余服务。根据您的准确程度,您可以将time.time()结果乘以1000得到毫秒,然后绕过其余部分以删除浮点数。