2016-06-11 35 views
0

我在我的項目中有一個用戶輸入日期的文本框,如ddmmyyyy。我需要將它轉換爲dd-mm-yyyy格式,以便我可以從數據庫中獲取特定數據。如何將文本框值ddmmyyyy轉換爲dd-mm-yyyy?

+0

真的有字符串格式的日期時間是壞的。使用任何可以從用戶獲取日期時間的日期選擇器控件,並將其持久保存爲UTC。 –

回答

1

您可以先解析您的stringDateTime,然後用生成格式的字符串表示。

例如;

var s = "11062016"; 
var dt = DateTime.ParseExact(s, "ddMMyyyy", CultureInfo.InvariantCulture); 
Console.WriteLine(dt.ToString("dd-MM-yyyy", CultureInfo.InvariantCulture)); 

順便說一句,我假設你想說MM而不是mm因爲mm符是分鐘,但MM符是幾個月。

另一方面,你從來沒有告訴你想要獲取的數據,但是用字符串得到DateTime值(如果有的話)並不是一個好主意。使用DateTime值從您的數據庫(大多數RDMS支持)獲取DateTime數據,而不是字符串。

0

嘗試

string str = "06112016"; 
DateTime date = new DateTime(); 
DateTime.TryParseExact(str, "ddMMyyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out date); 
string FormattedDate = date.ToString("MM-dd-yyyy");