[英]Convert s string to specific DateTime format with timezone - C#
我正在嘗試這段代碼 (c#):
string input1 = "2009-11-22 01:01:05 +1:30"
string input2 = "2009-11-22 01:01:05"
DateTime date1 = new DateTime();
DateTime date2 = new DateTime();
string format = "yyyy-MM-dd hh:mm:ss [z]"
DateTime orgDate1 = DateTime.ParseExact(input1, format, null);
DateTime orgDate2 = DateTime.ParseExact(input2, format, null);
目的是:
string input1 = "2009-11-22 01:01:05 +1:30"
DateTime date1 = new DateTime();
string format = "yyyy-MM-dd hh:mm:ss zzz"
DateTime orgDate1 = DateTime.ParseExact(input1, format, null);
我嘗試了很多選擇,例如:
DateTime.ParseExact("2009-11-22 00:00:00 1", "yyyy-MM-dd hh:mm:ss z",null)
DateTime.ParseExact("2009-11-22 00:00:00 1", "yyyy-MM-dd hh:mm:ss Z",null)
但總是得到 formatException。
只有這段代碼有效:
DateTime.ParseExact("2009-11-22 00:00:00Z", "yyyy-MM-dd hh:mm:ssZ",null)
但它返回確切的 UTC 時區,而我需要將它作為參數。
都在上面描述了
好的,經過多次試驗,我發現以下代碼有效:
DateTime.ParseExact("2009-11-22 00:00:00+1", "yyyy-MM-dd hh:mm:ss z",null)
所以保留另一個問題 - 我如何定義帶有可選時區的格式,以便正確解析“2009-11-22 00:00:00+1”和“2009-11-22 00:00:00” ?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.