High Sierra Chat.db时间戳

时间:2017-11-12 09:26:24

标签: messages macos-high-sierra

我要去chat.db来获取应用程序上的消息(Mac OS)。

在我的SQL SELECT之前,我使用datetime(date, 'unixepoch', 'localtime')来转换时间戳。

现在在High Sierra上它没有用,我一无所获。

似乎时间戳改变了...更多这样的数字:531651854330806016

有人知道怎么转换吗?

2 个答案:

答案 0 :(得分:0)

根据https://apple.stackexchange.com/questions/114168/dates-format-in-messages-chat-db

,日期字段现在看起来是纳秒字段

所以你可以试试这个: datetime(date/1000000000, 'unixepoch', 'localtime')

答案 1 :(得分:0)

在Mac OS Mojave上,您需要添加+ 978307200:

datetime(date/1000000000 + 978307200,'unixepoch','localtime')

iMessage的上一条消息时间: 2018-11-23 06:44

SELECT datetime(date/1000000000 + 978307200,'unixepoch','localtime') FROM message ORDER BY ROWID desc limit 1;

结果:

2018-11-23 06:44:01