如何将日期字符串(通常为“ccyymmdd”)转换为C#中的DateTime对象?
例如,如何将“20100715”转换为DateTime对象。
请 - 没有RTFM链接到Microsoft Tech Docs。
非常感谢...
答案 0 :(得分:7)
using System.Globalization;
DateTime.ParseExact("20100715", "yyyyMMdd", CultureInfo.InvariantCulture);
答案 1 :(得分:3)
var dt = DateTime.Parse("your date string").ToString("yymmdd");
我认为cc
不是有效的日期格式选项吗?
正如Richard指出的那样,你也可以使用DateTime.ParseExact
来使用文化信息进行解析,或者你可以使用与DateTime.TryParseExact
相同的DateTime.ParseExact
,但是如果有一个例外,然后返回一个空日期,而不是引发异常。
编辑:
问题已更新,以便专门返回DateTime
。在这种情况下,您可以省略我的答案的.ToString()
部分。调用DateTime.Parse()
将返回DateTime
个对象。通过ToString()
获取日期值时,只需传递所需的格式字符串即可获得所需格式的日期。
干杯。
雅各
答案 2 :(得分:1)
答案 3 :(得分:1)
如果您的日期字符串已经消毒(借用Mike的回答):
DateTime dt = DateTime.ParseExact("20100715", "yyyyMMdd", CultureInfo.InvariantCulture);
否则:
DateTime dt;
if (!DateTime.TryParseExact("20100715", "yyyyMMdd", CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
{
// Handle bad date
}
答案 4 :(得分:0)
System.DateTime.Parse(yourDateString)
您可能必须将字符串操作为方法可以首先处理的格式。
请参阅http://msdn.microsoft.com/en-us/library/1k1skd40.aspx
了解更多信息
答案 5 :(得分:0)
我不确定“cc”部分是什么,但有几个选项。
DateTime.Parse(string)可以转换字符串,但如果字符串是非标准格式,则可能需要先进行一些预转换。