0

我需要一种方法,它以“January”或“JAN”之类的字母表示月份的日期并找到其对应的“01”。

你能给我一些想法吗?

4

1 回答 1

3

就像使用一样简单DateTime.Parse

 DateTime val = DateTime.ParseExact("28 JUN 2013", "dd MMM yyyy", null)

*注意:如果默认理解此日期格式,您可能不需要 ParseExact,我相信它是。因此,这在您的情况下应该也可以正常工作,并且它还可以处理其他默认用途:

DateTime val = DateTime.Parse("28 JUN 2013")

如果您有多个非标准日期转换需要支持,您可能需要DateTime.ParseExact在 if/else if 循环或 try/catch 块中尝试多个选项。

请注意 Andrew M 对多种格式的更好方法的评论: DateTime.ParseExact 的重载采用了一系列格式:http: //msdn.microsoft.com/en-us/library/332de853.aspx – Andrew Morton

完整的月份格式字符串如下所示:

DateTime val = DateTime.ParseExact("28 January 2013", "dd MMMM yyyy", null)

注意额外的M. 有关格式字符串信息,请参见此处:http: //msdn.microsoft.com/en-us/library/8kb3ddd4%28v=vs.80%29.aspx

于 2013-06-28T16:07:37.497 回答