3

這裏是從IE9 localStorage的文件中的一些示例XML:解釋IE9 LTIME&htime localStorage的時間戳

<root> 
    <item name="1264474612:page_insights:latestversion" 
    value="6" 
    ltime="1024039440" 
    htime="30244985" /> 
</root> 

我試圖找出如何解釋這些種類的記錄,包括LTIME和htime值。我從研究中發現它與IE9 localStorage有關,來自%userprofile%\AppData\Local\Microsoft\Internet Explorer\DOMStore\

任何幫助表示讚賞。

回答

4

ltimehtime是64位時間值的一部分,其中一個是較低值,另一個是較高的32位值。

兩種最常用的64位時間格式的Unix(POSIX )時間和Windows FILETIME(僅限64位)的64位版本。

  • POSIX時間是UTC自1970年1月1日以來的秒數。
  • Windows FILETIME是自UTC 1月1日1601年以來的納秒數。

同時使用ltimehtime,得到64位的值,每個必須被轉換第一至十六進制。

ltime = 1024039440 (decimal) = 0x3d099a10 (hexadecimal) 
htime = 30244985 (decimal) = 0x01cd8079 (hexadecimal) 

value = (htime x 0x100000000) + ltime 
     = (0x01cd8079 x 0x100000000) + 0x3d099a10 
     = 0x01cd807900000000 + 0x3d099a10 
     = 0x01cd80793d099a10 (hexadecimal) 
     = 129901222467050000 (decimal) 

如果上述結果是使用FILETIMEPOSIX格式,計算出的FILETIME時間將是2012-08-22, 08:17:26.705,而POSIX時間將是4116407840-06-22, 09:53:20。因此,由於POSIX時間將超過當年(2012),所以更有可能將時間戳用於格式。