C#とjavascriptの時間

基本

時間を表す言葉には時刻と時間間隔があるので時間という言葉ではあいまいになる。
どちらの場合も単位と基準点が問題になる。単位は秒とかミリ秒とかのこと、基準はUTCとか日本時間のこと。

Unix time stamp

UTCで1970/1/1からの秒を表す。今の値はこことかでわかる。

C#でこの値を得るには以下のコード

C#のDateTimeは0001/1/1からの100ナノ秒で管理しているようだ。3つの引数をとるコンストラクタはグレゴリオカレンダーで初期化するのでこれでいいらしい。

javscriptでこの値を得るには以下のコード

javascriptのDateはUTCで1970/1/1からのミリ秒で管理しているようだ。デフォルトのコンストラクタは今でgetTime()はミリ秒でUnix Epoch(=Unix time stamp)を返すので1000で割って秒にしている。

Unix time stampからオブジェクトをつくる

C#の場合は以下のようにやるらしい

これだとローカル時間が帰るので以下のように修正

javascriptの場合は以下

ソースコード

https://github.com/ambiesoft/blogprogs/tree/master/5705

chromiumベースのEdgeから古いEdgeにもどす

管理者権限でコマンドプロンプトを起動

[Win]+Qでサーチダイアログを開きコマンドと入力し、コマンドプロンプトを右クリックして管理者として実行を選択する。

Edgeのsetup.exeを実行してアンインストールする

以下のようにEdgeのフォルダでsetup.exe –uninstall –system-level –verbose-logging –force-uninstallを実行する。

上記のようにsetup.exeを実行する。Program Filesのパスは環境によって変わる。

成功すると、Chromium版のEdgeはアンインストールされ、自動的に古いEdgeにもどる。