在C#中将字符串转换为日期

时间:2009-11-03 04:24:23

标签: c# date

如何将字符串中的日期转换为DateTime类型,即使日期不符合.net库支持的日期也是如此。

"dec 2 2009" 
"dec 2, 2009"
"dec 2009"
"december 2009"
"dec. 2009"
"dec. 2, 2009"
and so on

有这个库吗?

假设我们的日期格式

4 个答案:

答案 0 :(得分:2)

尝试:

MyDateTime = DateTime.ParseExact(MyString, "yyyy-MM-dd HH:mm tt", null);

......或任何适当的日期格式......

参考:DateTime.ParseExact

答案 1 :(得分:2)

查看http://msdn.microsoft.com/en-us/library/w2sa9yss.aspx上的DateTime.ParseExact以及http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx处的自定义格式。

以下是一个例子:

...
DateTime.TryParseExact(s, "%M %d yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out resultDateTime)
...

答案 2 :(得分:2)

如果我理解你的问题

你可以试试

ParseExact

例如:DateTime.ParseExact(sDate, "mm/dd/yyyy", CultureInfo.InvariantCulture);

答案 3 :(得分:0)

“即使日期不符合.net库支持的内容。”

“这里有图书馆吗?”

所以你想要一个库,因为库不支持它?

显然,人们之前可能已经编写了其他日期/时间字符串解析器,但是对于您可能需要的任何内容,它们都不会是详尽无遗的 - 只需找到适合您期望格式的内容。