ホームページ  >  記事  >  バックエンド開発  >  C# の DateTime とタイムスタンプの変換

C# の DateTime とタイムスタンプの変換

高洛峰
高洛峰オリジナル
2016-11-04 14:57:173103ブラウズ

C# の DateTime とタイムスタンプの変換 (JavaScript タイムスタンプと Unix タイムスタンプを含む)。

1. タイムスタンプとは何ですか?

まず、JavaScript と Unix のタイムスタンプの違いを理解する必要があります:

JavaScript のタイムスタンプ: 1970 年 1 月 1 日のグリニッジ時間 (北京時間) の 00:00:00 を指します。 1970 年 1 月 1 日 (08:00:00) から現在までの合計ミリ秒数。

Unix タイムスタンプ: グリニッジ時間の 1970 年 1 月 1 日の 00:00:00 (北京時間の 1970 年 1 月 1 日の 08:00:00) から現在までの合計秒数を指します。

JavaScript タイムスタンプは合計ミリ秒数であり、Unix タイムスタンプは合計秒数であることがわかります。

たとえば、同じ 2016/11/03 12:30:00 は、JavaScript タイムスタンプに変換すると 1478147400000、Unix タイムスタンプに変換すると 1478147400 になります。

2. JavaScript タイムスタンプを相互に変換する

2.1 C# DateTime を JavaScript タイムスタンプに変換する

System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
long timeStamp = (long)(DateTime.Now - startTime).TotalMilliseconds; // 相差毫秒数
System.Console.WriteLine(timeStamp);

2.2 JavaScript タイムスタンプを C# DateTime に相互に変換する

3. C# DateTime を Unix 時間に変換するPoke

long jsTimeStamp = 1478169023479;
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
DateTime dt = startTime.AddMilliseconds(jsTimeStamp);
System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));

3.2 Unix タイムスタンプを C# DateTime に変換する

System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
long timeStamp = (long)(DateTime.Now - startTime).TotalSeconds; // 相差秒数
System.Console.WriteLine(timeStamp);

上記は C# DateTime とタイムスタンプ変換の内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。