将String转换为DateTime

时间:2010-02-24 14:49:19

标签: c# datetime

我有一个这样的字符串:

"20090212"

我希望转换为有效的C#datetime。

我是否需要解析它,因为这似乎太多了?

3 个答案:

答案 0 :(得分:13)

您可以使用DateTime.ParseExact

DateTime result =
    DateTime.ParseExact("20090212", "yyyyMMdd", CultureInfo.InvariantCulture);

答案 1 :(得分:4)

查看DateTime.TryParseExact方法(MSDN)。我更喜欢TryParseExact方法到ParseExact方法,因为它返回一个布尔值,告诉你转换是否成功而不是抛出异常,但任何一个都可以。

答案 2 :(得分:2)

DateTime.ParseExact(str, "yyyyMMdd", CultureInfo.CurrentCulture);

......我真的怀疑我先到了那里。

虽然为了完整性,我更喜欢TryParseExact

DateTime dt;
if(DateTime.TryParseExact(str, "yyyyMMdd", CultureInfo.CurrentCulture, DateTimeStyles.None, out dt)) { 
  // ... use the variable dt 
}