2010-04-12 100 views
0
?string.Format(CultureInfo.GetCultureInfo("en-US"), "{0:d}", now) 
"4/12/2010" 

?string.Format(CultureInfo.GetCultureInfo("fr-FR"), "{0:d}", now) 
"12/04/2010" 

我想寫一個方法:string GetDateFormat(culture)Howto:如何獲得文化DateTime格式

?GetDateFormat(CultureInfo.GetCultureInfo("en-US")) 
"M/d/yyyy" 

?GetDateFormat(CultureInfo.GetCultureInfo("fr-FR")) 
"dd/MM/yyyy" 

這可能嗎?

回答

3

你可以看看的ShortDatePattern屬性:

CultureInfo.GetCultureInfo("en-US").DateTimeFormat.ShortDatePattern 
2

更通用的答案是使用GetAllDateTimePatterns

CultureInfo.GetCultureInfo("en-US").DateTimeFormat.GetAllDateTimePatterns('d')[0] 

注意GetCultureInfo不會拿起任何用戶覆蓋。

+0

這是一種解決方法http://stackoverflow.com/questions/2621928/how-to-display-a-datetime-with-chosen-date-parts-but-in-the-order-of-the -formatp/2622391#2622391 – serhio 2010-04-13 07:37:47