我需要一种方法,它以“January”或“JAN”之类的字母表示月份的日期并找到其对应的“01”。
你能给我一些想法吗?
就像使用一样简单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