簡體   English   中英

將datetime ticks(String.Format(“{0:D19}”,DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks)轉換為datetime

[英]Convert datetime ticks(String.Format(“{0:D19}”, DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks) to datetime

我以日期時間刻度格式存儲Azure表存儲rowkey

String.Format("{0:D19}", DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks);

我想轉換回日期時間。

如果你這樣做:

string str = String.Format("{0:D19}", DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks);

那我們就有了

// str = max - now

那么

// now = max - str

所以

DateTime now = new DateTime(DateTime.MaxValue.Ticks - long.Parse(str), DateTimeKind.Utc);

您的代碼在我的時區返回2519440974768899656 ,現在是UTC +02:00,您可以將此字符串解析為long並且可以在DateTime(long)構造函數中使用。

var s = String.Format("{0:D19}", DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks).Dump();
long l = long.Parse(s);
(new DateTime(l)).Dump();

返回

16.10.7984 15:31:16

但說實話,這取決於你在做什么,我不太確定這是你想要的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM