下面显示“07/01/2011”而不是“07/09/2011”的代码段。这段代码片段有什么问题吗?
代码段:
DateTime result;
DateTime.TryParseExact(
"07/09/2011",
"dd-mm-yyyy",
new CultureInfo("en-GB"),
System.Globalization.DateTimeStyles.None,
out result);
// shows "07/01/2011"
MessageBox.Show(result.ToString());
答案 0 :(得分:14)
mm
是“分钟”。 MM
是月。此外,它不应该匹配任何内容,因为在您使用/
分隔组件的日期和您使用破折号的模式中。
因此,您的日期模式应为dd/MM/yyyy
,或者您的日期字符串应为07-09-2011
。
答案 1 :(得分:4)
正确的格式字符串为dd/MM/yyyy
答案 2 :(得分:1)
dd-mm-yyyy
应为dd/MM/yyyy
,因为mm代表分钟,而-
在TryParseExact中不等于/
。