2013-04-11 27 views
3

我正在研究一個項目,並得到以下字符串表示的時間和日期,即「00:02:52 2013年4月11日,格林威治標準時間」。當我使用DateTime.Parse()方法:C#DateTime.Parse(someString)

DateTime dt= DateTime.Parse(dateString);

string text = dt.ToString("hh:mm:ss MMM dd, yyyy ").ToUpper();

我的輸出(文本)是:

「:02:52 2013年4月11日格林尼治標準時間」

和NOT

「:02:52 2013年4月11日格林威治標準時間「

我不明白爲什麼小時(HH)已經更改爲00至05.我通過V.S.追蹤我的代碼。多次。我所做的只是將本月截至四月。

是否有人請給我洞察我做錯了什麼或失蹤?

謝謝!

+2

檢查您的本地時區設置,並查看示例代碼[這裏](http://msdn.microsoft.com/en-us/library/system.datetime.parse。 aspx)和[here](http://msdn.microsoft.com/en-us/library/system.datetime.kind.aspx)。 –

+0

感謝提示Robert! –

回答

1

試試這個

string dateString = "00:02:52 APRIL 11, 2013 GMT"; 
DateTime dt = DateTime.Parse(dateString).ToUniversalTime(); 
+0

謝謝薩欽!有用! 對不起,顯然我需要15個聲望給你+1的答案。 –

+1

您應該能夠將其答案標記爲已接受。 –

+0

嗨大衛。我(小白)剛加入SO。我如何將Sachin的答案標記爲已接受? –

相關問題