2010-07-30 135 views
11

我有一个很大的集合(超过一亿个)的观测值,日期以自定义字符串格式表示。我们没有生成日期字符串,我只需要将日期字符串转换为日期时间类型。将自定义日期格式(字符串)转换为日期时间

如何将字符串日期(例如2010年6月12日)转换为日期时间?我的想法是将字符串解析为组件,按照正确的顺序组装它们,并将该字符串传递给datetime的构造函数。有没有办法传递datetime()一个自定义的日期格式字符串呢?

谢谢!

回答

22

看看DateTime.ParseExact,例如

var dateTime = DateTime.ParseExact(
    "12 JUN 2010", 
    "dd MMM yyyy", 
    CultureInfo.InvariantCulture); 

您还可以指定第四个参数来设置的日期/时间Kind,例如,如果他们是UTC日期/时间那么你很可能要指定DateTimeStyles.AssumeUniversal

+0

我刚刚学到了一些新东西,+1 – 2010-07-30 16:13:48

+3

+1,我刚刚学到了两件新的东西,其中一件是吉米霍法活着, – LittleBobbyTables 2010-07-30 16:19:54

0

这时间字符串是有效的DateTime.Parse()(或.TryParse()

对于一个真正的自定义字符串.Parse()不能处理,你可能是正确的,你需要拉开你的字符串以有用的方式重新组装它。

相关问题