比较time.time()& System.currentTimeMillis的()

时间:2017-02-07 19:07:03

标签: java python timestamp

我正在使用python和java中的多个项目。我有一个来自python项目的时间戳为 time.time()。我需要将它与我的java项目中的当前时间戳进行比较为 System.Currenttimemillis()。如何比较time.time()和System.Currenttimemillis()?

的时间

2 个答案:

答案 0 :(得分:4)

Python将自Epoch以来的时间(以秒为单位)作为浮点数返回,而Java返回自纪元以来的毫秒数。

将python结果乘以1000并向下舍入,得到一个可以与java时间戳进行比较的整数。

如果您是两个项目的所有者/维护者,您可能需要考虑使用ISO-8601 date format中的文字而不是数字。两种语言都支持基于系统时间创建这种格式。最大的好处是更容易阅读这种格式;)

答案 1 :(得分:0)

注意差异: time.time()根据定义的时区,将纪元作为浮点数返回中的时间。 System.currentTimeMillis()以UTC时区中的长数字为单位,以毫秒的形式返回时间。 所以要比较你需要的两个:

  1. 将python时间转换为UTC,例如将time.timezone添加到time.time()
  2. 的结果中
  3. 将调整后的python时间从秒转换为毫秒乘以1000并将结果舍入/ ceil / floor。
  4. 之后,你有两个时间在同一个单位和时区。