2
我們正在開發一個C#web應用程序,它必須處理Unix時間戳和C#DateTime對象。時間戳必須轉換爲DateTime對象。C#:Unix時間戳和日期時間
下面的例子顯示了我的問題:日期時間應該是'18 .10.2011 14時02' 分32秒
System.DateTime time = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
time = time.AddSeconds(1318939352);
System.Console.Out.WriteLine("Time: " + time); // -> 18.10.2011 12:02:32
如果我在我的開發機器上調用ToLocalTime(),日期時間是正確的:
System.DateTime time = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
time = time.AddSeconds(1318939352).ToLocalTime();
System.Console.Out.WriteLine("Time: " + time); // -> 18.10.2011 14:02:32
但是,應用程序將運行在另一個時區(GMT標準時間)託管的服務器上,因此我必須處理不同的時區,第二個示例在此服務器上失敗。 無論我主持應用程序的位置如何,本例中的日期應始終打印爲18.10.2011 14:02:32。
有誰知道我該怎麼做?提前致謝!
最好的問候, 托爾斯滕
時,你的情況下,爲什麼不指定'DateTimeKind.Utc',運作的?像新的System.DateTime(1970,1,1,0,0,0,0,DateTimeKind.Utc);'(希望14:02:32是格林尼治標準時間) – V4Vendetta
總是以UTC存儲時間,這是客戶端應用程序告訴服務器如何將輸出格式化的時間。 – Angelom
@ V4Vendetta - 14:02:32是GMT + 2 – Polity