17位时间戳转换为Unix时间戳及转换工具,代码实现转换 WebKitChrome Timestamp Converter

17位时间戳转换为Unix时间戳及转换工具,代码实现转换 WebKitChrome Timestamp Converter,第1张

文章目录
  • 前言/目的:
  • 关于17位时间戳 WebKit/Chrome Timestamp的介绍
  • 便捷的在线转换工具
  • 用代码实现转换
    • Python版本
    • JavaScript版本


前言/目的:

在浏览微软Edge,谷歌Google,火狐Firefox等浏览器本地数据库文件的时候,发现里面的数据库表的关于时间的字段,其值都是用一种17位的时间戳表示的(即WebKit/Chrome Timestamp ),而不是常见的Unix时间戳,所有这里记录一下怎会在这些时间戳以及常见时间格式之间转换




关于17位时间戳 WebKit/Chrome Timestamp的介绍

Chrome的基准时间是1601年1月1日00:00:00。要计算本地时间,Chrome time必须除以一百万转换为秒,然后必须减去01/01/1601 00:00:00和01/01/1970 00:00:00之间的秒差

可以参考这个回答





便捷的在线转换工具

在线转换工具




用代码实现转换
Python版本
import datetime
def date_from_webkit(webkit_timestamp):
    epoch_start = datetime.datetime(1601,1,1)
    delta = datetime.timedelta(microseconds=int(webkit_timestamp))
    print epoch_start + delta

inTime = int(raw_input('Enter a Webkit timestamp to convert:'))
date_from_webkit(inTime)

JavaScript版本
function date_to_webkit(date_string) {
  epoch_start = new Date(1601, 0, 1);
  date_ = new Date(date_string);
  diff = Math.abs(date_ - epoch_start) * 1000;
  return diff;
}
date_string = "2022-04-14 00:00:00";
webkit_string = date_to_webkit(date_string);
console.log(webkit_string);

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/715510.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存