我使用轉換,如:Convert.ToDateTime:如何設置格式
Convert.ToDateTime(value)
,但我需要轉換日期,如 「MM/YY」 格式化。
我正在尋找這樣的事情:
var format = "mm/yy";
Convert.ToDateTime(value, format)
我使用轉換,如:Convert.ToDateTime:如何設置格式
Convert.ToDateTime(value)
,但我需要轉換日期,如 「MM/YY」 格式化。
我正在尋找這樣的事情:
var format = "mm/yy";
Convert.ToDateTime(value, format)
你或許應該請使用DateTime.ParseExact
或DateTime.TryParseExact
代替。它們允許你指定特定的格式。我個人更喜歡Try
-versions,因爲我認爲它們爲錯誤情況生成更好的代碼。
如果value
是在格式string
並且希望將其轉換成一個DateTime
對象,你可以使用DateTime.ParseExact
靜態方法:
DateTime.ParseExact(value, format, CultureInfo.CurrentCulture);
例子:
string value = "12/12";
var myDate = DateTime.ParseExact(value, "MM/yy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None);
Console.WriteLine(myDate.ToShortDateString());
結果:
2012-12-01
我試試這個:string value =「12/12」; format =「mm/yy」;然後datetime.paeseExact(value,format,Cul ..)= return {01/01/2012 00:12:00}。爲什麼? – Refael 2013-03-04 14:28:47
因此'DateTime.ParseExact(value,「mm/yy」,CultureInfo.CurrentCulture);'應該可以工作。 – MarcinJuraszek 2013-03-04 14:29:36
我期待{01/12/12}或{12/12} – Refael 2013-03-04 14:35:17
DateTime
沒有格式。格式只有當你把一個DateTime
成一個字符串,這恰好隱含您展示一種形式,網頁上的價值,等等
看其中你顯示日期時間,並設置格式適用那裏(或者如果你需要額外的指導,請修改你的問題)。
如何:
string test = "01-12-12";
try{
DateTime dateTime = DateTime.Parse(test);
test = dateTime.ToString("dd/yyyy");
}
catch (FormatException exc)
{
MessageBox.Show(exc.Message);
}
當測試將等於 「12/2012」
希望它能幫助!請參閱HERE。
您可以使用Convert.ToDateTime是它顯示在How to convert a Datetime string to a current culture datetime string
DateTimeFormatInfo usDtfi = new CultureInfo("en-US", false).DateTimeFormat;
var result = Convert.ToDateTime("12/01/2011", usDtfi)
'DateTime'對象沒有定義的格式。您可以以格式輸出DataTime,那是什麼意思? – 2013-03-04 14:15:30