如何将文本框值ddmmyyyy转换为dd-mm-yyyy?

时间:2016-06-11 10:52:37

标签: c# asp.net datetime datetime-format

我的项目中有一个用户输入日期的文本框,如ddmmyyyy。我需要将其转换为dd-mm-yyyy格式,以便我可以从数据库中获取特定数据。

2 个答案:

答案 0 :(得分:1)

您可以先将string解析为DateTime,然后使用 格式生成字符串表示。

例如;

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数据,而不是字符串。

答案 1 :(得分: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");