2013-07-18 24 views
2

我要更改日期格式如何用文化改變的日期時間格式

CultureInfo ci = new CultureInfo("en-US"); 

Thread.CurrentThread.CurrentCulture = ci; 

string fromdate =(TxtFrom.Text); 

string todate = (TxtTo.Text); 

DateTime dt =DateTime.Parse(fromdate); 

DateTime d =DateTime.Parse(todate); 

_DivAPath.FROM_DATE = Convert.ToDateTime("d",ci); 

_DivAPath.TO_DATE = Convert.ToDateTime("d",ci); 

但它會顯示不同的是,定日期時間不是一個正確的format.how更改日期時間函數...

請解釋

回答

2

首先,你並不需要,如果你想解析或轉換日期與給定CultureInfo真正改變的文化,所以這是不必要的:

Thread.CurrentThread.CurrentCulture = ci; 

您可以簡單地使用DateTime.Parse重載接受文化:

DateTime dt = DateTime.Parse(fromdate, ci); 

唯一的例外可能是在Convert.ToDateTime("d",ci);因爲d提出是不是有效日期;)

也許FROM_DATE是一個字符串屬性,你實際上想要將日期時間轉換爲短日期字符串,那麼你可以使用:

_DivAPath.FROM_DATE = dt.ToString("d", ci); 

_DivAPath.FROM_DATE = dt.ToShortDateString(); // uses the current-culture 
0

您傳遞字符串作爲"d"要轉換爲DateTime值。沒有引號可通過ddt

+0

那麼爲什麼他應該在'DateTime'變量上使用'Convert.ToDateTime'呢? –

+0

*呃*你說得對。 :-) – Alexander