【发布时间】:2010-07-30 16:08:31
【问题描述】:
我有一大组(100+ 百万)观察值,日期表示为自定义字符串格式。我们没有生成日期字符串,我只需要将日期字符串转换为日期时间类型。
如何将字符串日期(例如,2010 年 6 月 12 日)转换为日期时间?我的想法是将字符串解析为组件,以正确的顺序组装它们,然后将该字符串传递给 datetime 的构造函数。有没有办法将 datetime() 传递给自定义日期格式字符串?
谢谢!
【问题讨论】:
我有一大组(100+ 百万)观察值,日期表示为自定义字符串格式。我们没有生成日期字符串,我只需要将日期字符串转换为日期时间类型。
如何将字符串日期(例如,2010 年 6 月 12 日)转换为日期时间?我的想法是将字符串解析为组件,以正确的顺序组装它们,然后将该字符串传递给 datetime 的构造函数。有没有办法将 datetime() 传递给自定义日期格式字符串?
谢谢!
【问题讨论】:
看看DateTime.ParseExact,例如
var dateTime = DateTime.ParseExact(
"12 JUN 2010",
"dd MMM yyyy",
CultureInfo.InvariantCulture);
您还可以指定第四个参数来设置日期/时间的Kind,例如,如果它们是UTC 日期/时间,那么您可能想要指定DateTimeStyles.AssumeUniversal。
【讨论】:
您可以使用DateTime.ParseExact,并使用custom date and time format strings 将格式传递给此方法。这将允许您一次性解析日期。
【讨论】:
该日期时间字符串对DateTime.Parse()(或.TryParse())有效
至于 .Parse() 无法处理的真正自定义字符串,您可能是正确的,您需要将字符串拆开并以有用的方式重新组合。
【讨论】: