代码之家  ›  专栏  ›  技术社区  ›  Senseful

以浮点形式存储的日期/时间,使用哪种算法?

  •  2
  • Senseful  · 技术社区  · 14 年前

    我可以访问第三方应用程序的数据库,我看到一个名为“date”的字段,它将日期/时间值存储为浮点数,但我不确定这个浮点数是如何映射到日期/时间的。此数据库没有文档。

    以下是一些示例数据:

    date-field        actual-date-time
    253507382.168744  1/12/09 6:43 PM PST
    253507480.136126  1/12/09 6:44 PM PST
    253508091.838982  1/12/09 6:54 PM PST
    256703604.015055  2/18/09 6:33 PM PST
    256704413.484674  2/18/09 6:46 PM PST
    

    注意:我必须手动输入这些值,所以它们可能有点偏离。如果你想看到更多的数据,让我知道,我会添加更多。

    我希望有人是这种格式的存储日期熟悉,可以让我知道如何获得一个日期/时间给定一个浮点数。

    3 回复  |  直到 14 年前
        1
  •  2
  •   Mark Ransom    14 年前

    如果你看一下10分钟和13分钟之间数字的变化,你会发现大约是60秒,因此我得出结论,这是从基准日期算起的秒数。

    编辑: 基准日期似乎是2001年1月1日,时间似乎也有所调整-可能是UTC加上您的本地时间偏移。

        2
  •  1
  •   jts    14 年前

    如果你减去这两点中的任何一点,你会发现这些值代表秒数,精确到微秒。计算出时钟“开始”的基准日期应该很容易。在Unix和相关系统上,这是1970年1月1日。

        3
  •  0
  •   Sam Holloway    14 年前