2016-12-26 58 views
0

我想回到我給它的格式,但它沒有改變。 Web服務僅以此格式工作。C#日期時間格式yyyy-MM-dddd

即時= 「2016-12-26T08:20:37.494 + 03:00」

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString(), "yyyy-MM-dd", System.Globalization.CultureInfo.InstalledUICulture); 

req.AP_Info.Instant = fDate; 

我寫了上面的代碼,但我得到一個錯誤。 我的電腦的語言是土耳其語。

我想的格式爲:2016年12月26日

感謝

回答

0

日期時間是表示日期和時間,但一個DateTime對象類型本身沒有特定的輸出格式。 確實可以通過調用ToString()方法來顯示日期時間以多種輸出格式表示的日期,但重要的是要注意,這不會更改實際DateTime對象的任何格式。它只是使用指定的格式創建日期的字符串表示。

如果你有一個代表YYYY-MM-DD日期的字符串,你可以將其轉換爲使用DateTime.ParseExact方法像這樣的日期時間:

string date = DateTime.Now.ToString("yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture); 
DateTime fDate = DateTime.ParseExact(date, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture); 

使用CultureInfo.InvariantCulture作爲的IFormatProvider確保無論當前線程的文化設置如何,它都可以工作。

但是,如果Instant屬性的類型是DateTime而不是String,則不需要關心格式,因爲DateTime屬性只能設置爲DateTime對象,而DateTime對象沒有特定的格式。

+0

https://s23.postimg.org/42m2730x7/datetime.png 非常感謝您的回覆。我會照顧好網絡服務。有這樣的結果。 –

3

使用DateTime.ToString()方法:

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString(), "yyyy-MM-dd", System.Globalization.CultureInfo.InstalledUICulture); 
string myformatted = fDate.ToString("yyyy-MM-dd"); 
+0

我希望它返回DateTime.It不是String。 –

+0

DateTime fDate = DateTime.ParseExact(DateTime.Now.ToString(),「yyyy-MM-dd」,System.Globalization.CultureInfo.InstalledUICulture); 我上面寫的代碼犯了一個錯誤。 –