2010-06-04 92 views
0

有誰知道如何顯示 基於CurrentCulture的日期時間的日期,但時間遵循此模式"HH:mm:ss.fff"顯示日期基於文化,但基於模式的時間

我試着使用:

日期時間NewDate = DateTime.Now; NewDate.ToString(CultureInfo.CurrentCulture);
結果:4-6-2010 14:49:41。
預計:4-6-2010 14.49.41,495。

對於時間,我也需要顯示毫秒,但日期格式必須仍然基於文化。

+0

定義**不起作用**,你可以發佈你在說什麼VS你期待什麼? – R0MANARMY 2010-06-04 12:34:09

+0

我已更新該問題。希望現在清楚。 – Albertus 2010-06-04 12:54:05

回答

1
string s = String.Format("{0} {1}", NewDate.ToString("d"), NewDate.ToString("HH:mm:ss.fff")); 

如果返回的DateTimeFormatInfo對象的LongTimePattern屬性返回的自定義格式字符串不希望使用當前文化格式化您datestring您可以創建的CultureInfo的實例,並把它傳遞給你的ToString方法

CultureInfo ci = new CultureInfo("en-US"); 
string s = String.Format("{0} {1}", NewDate.ToString("d", ci), NewDate.ToString("HH:mm:ss.fff")); 
+0

就是這樣!非常感謝Morten。 只需要添加毫秒: string s = NewDate.ToString(「d」)+「」+ NewDate.ToString(「HH:mm:ss.fff」); – Albertus 2010-06-04 13:00:26

+0

太棒了 - 我現在增加了毫秒:-) – 2010-06-04 13:05:59

1
NewDate.Date.ToString(Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern) + 
    NewDate.TimeOfDay.ToString("HH:mm:ss.fff"); 

MSDN

此方法使用從當前培養物衍生格式化信息。特別是,它包含了由ShortDatePattern並通過Thread.CurrentThread.CurrentCulture.DateTimeFormat財產