2

Google Chrome がインストールされた拡張機能に使用する設定ファイルを調べていますが、install_time が奇妙な形式で保存されているようです。

ファイルの日付の例をいくつか示します。

"install_time": "13018473436573431",

"install_time": "13018473437125431",
"lastpingday": "13024047600974141",

C# アプリケーションでは DateTime に変換されず、通常の JavaScript の日付ではないようです (これらは 13 個の数字のみです)。

17個というのは本当に不思議です。

ここにいくつかの追加のデバッグ情報があります。私は new DateTime("install_date") を呼び出そうとしたときに日付と番号自体を出力しました。

Program  Entry:
Ext Name: Clock
install_time: 1/2/0001 12:10:40 PM
install_time raw data: 13024070300259446
install_time (long):   13024070300259446

Program  Entry:
Ext Name: Googulator
install_time: 1/2/0001 12:10:40 PM
install_time raw data: 13024076154792655
install_time (long):   13024076154792655

Program  Entry:
Ext Name: Google News
install_time: 1/2/0001 12:10:40 PM
install_time raw data: 13024076389301659
install_time (long):   13024076389301659

Program  Entry:
Ext Name: Spotify - Music for every moment
install_time: 1/2/0001 12:10:40 PM
install_time raw data: 13024076418505659
install_time (long):   13024076418505659

ありがとう

4

2 に答える 2

0

Webkit 時刻から DateTime への変換

助けてくれてありがとう。リンクされたmusefanの役立つリンクを調べた後、答えを得ることができました. ミューズファンのものとは少し違います。将来誰かがこれについて助けを必要とする場合に備えて、明確にするためにコメントも追加しました。

私が使用した Musefan のソースは次のとおりです

        //The install time was 12:20 PM
        long rawTime = 13024081249872950;
        //Subtract the amount of seconds from 1601 to 1970.
        long convertedTime = (rawTime - 11644473600000000);
        //Devide by 1000000 to convert the remaining time to seconds.
        convertedTime = convertedTime / 1000000;
        //Set up a date at the traditional starting point for unix time.
        DateTime normalDate = new DateTime(1970, 1, 1, 0, 0, 0, 0);
        //Add the seconds we calculated above.
        DateTime googleDate = normalDate.AddSeconds(convertedTime);
        //Finally we have the date.
        System.Diagnostics.Debug.WriteLine("Final Date: " + googleDate.ToString());

出力:

最終日: 2013 年 9 月 19 日 16:20:49

-5 GMT (東部標準時間) から 4 時間ずれているようです。

于 2013-09-20T13:21:05.670 に答える