2014-02-09 61 views
0

我從一個API文件,裏面有這種格式爲什麼日期在服務器和本地顯示不同?

<DataPoint> 
<Amount>38.361</Amount> 
<Time>2014-01-02T12:00:00</Time> 
</DataPoint> 

當我得到的時間讀取數據,並在我的網站在Visual Studio中,我得到2014年2月1日打印。 但是,如果我上傳它,我會得到1/2/2014。

爲什麼當我在我的電腦上使用它時,以及在服務器上傳它時,相同的代碼會產生不同的結果?

我該如何解決這個問題?

PS:我編程在C#中,我使用的對象JArray來獲取數據,如果這是重要的

  JArray a = JArray.Parse(text); 

但是,這是因爲日期時間信息文化

回答

2

。英國日期安排爲dd/MM/yyyy,美國日期爲MM/dd/yyyy您可以使用Datetime.ToString("dd/MM/yyyy")將其轉換爲要顯示的日期時間格式。

2

將數值和日期時間值轉換爲string的格式取決於操作系統區域設置,而不是在代碼中明確設置它們。看起來就是這樣的情況。

如果你到處需要相同的日期/數字格式,不管用戶設置的操作系統首選項如何,你應該提供IFormatProvider實例,它將提供格式並覆蓋OS默認值。

最常用的是CultureInfo.InvariantCulture

var dateString = myDate.ToString(CultureInfo.InvariantCulture); 
+0

是的,不過,是不是可以強制什麼的日期格式,我從我的C#代碼想要什麼? –

+0

Aaa ...非常感謝。我剛剛在您的帖子中看到了更新 –

相關問題