【问题标题】:Convert dBase Timestamp转换 dBase 时间戳
【发布时间】:2013-11-17 01:37:28
【问题描述】:

我正在尝试将 dBase .dbf 文件转换为 mySQL 数据库...它非常简单,但我被困在我的 .dbf 数据库中使用的时间戳...

这里有一些时间戳+相应的日期和时间值:

41594.722222222 -   16.11.2013, 17:20   3472222
41594.725694444 -   16.11.2013, 17:25   3472223
41594.729166667 -   16.11.2013, 17:30   3472222
41594.732638889 -   16.11.2013, 17:35   3472222
41594.736111111 -   16.11.2013, 17:40   3472222
41594.739583333 -   16.11.2013, 17:45   3472223
41594.743055556 -   16.11.2013, 17:50   3472222
41594.746527778 -   16.11.2013, 17:55   3472222
41594.75        -   16.11.2013, 18:00   3472222
41594.753472222 -   16.11.2013, 18:05   3472222
41594.756944444 -   16.11.2013, 18:10   3472223
41594.760416667 -   16.11.2013, 18:15
41594.763888889 -   16.11.2013, 18:20
41594.767361111 -   16.11.2013, 18:25
41594.770833333 -   16.11.2013, 18:30
41594.774305556 -   16.11.2013, 18:35
41594.777777778 -   16.11.2013, 18:40
41594.78125     -   16.11.2013, 18:45
41594.784722222 -   16.11.2013, 18:50

第一个值 (x.y) 是时间戳,因为它存储在我的 .dbf 文件中。第二个 Value 是对应的 Date_Time 值。第三个值是实际和下一个时间戳之间的差异(5分钟^^)

我已经在这个页面上找到了一些提示: http://www.dbase.com/Knowledgebase/INT/db7_file_fmt.htm

它说:“8 个字节 - 两个长整数,第一个是日期,第二个是时间。日期是自公元前 4713 年 1 月 1 日以来的天数。时间是小时 * 3600000L + 分钟 * 60000L + 秒 * 1000L”

我不太确定,如果它适合我​​的时间戳格式^^,当我尝试将天数(41594)转换为年并从“01/01/4713 BC”开始计数时,我什至没有接近到 2013 年:D

那么,有人知道如何将这种类型的时间戳转换为可读格式吗?

【问题讨论】:

    标签: timestamp dbase


    【解决方案1】:

    尝试从 12/31/1899 而不是 01/01/4713 BC 开始计数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 1970-01-01
      • 2022-07-20
      • 2011-07-07
      • 2012-12-14
      • 2012-09-22
      相关资源
      最近更新 更多