为什么日期一个月不能正确显示
string date = string.Format("{0:mmddyyHHmmss}",
DateTime.Now);
给我420813104204
它不应该是040813 ......?
我想匹配 以MMDDYYhhmmss
为什么日期一个月不能正确显示
string date = string.Format("{0:mmddyyHHmmss}",
DateTime.Now);
给我420813104204
它不应该是040813 ......?
我想匹配 以MMDDYYhhmmss
试试这个,而不是
string date = string.Format("{0:MMddyyHHmmss}", DateTime.Now);
虽然这会工作,它会更好,如果你解释为什么这样可以让提问的人学到一些东西。在这种情况下,mm代表分钟,MM代表几个月。 – 2013-04-08 17:49:50
我在我的评论中解释了它,但是在做'string.Format'并且你正在使用'DateTime.Now'的'arg'时,'ss通常用于这部分字符的秒数'HH:mm:ss '所以他必须使用'MM'上的'MMddyy'帽来描述DateTime.Now的月份部分 – MethodMan 2013-04-08 18:00:22
这是因为mm
是分钟而不是几个月,您需要使用MM
。你可以看到custom date time strings here的定义。
string date = string.Format("{0:MMddyyHHmmss}",
此外,我一般不与DateTime
对象,因为我已经看到了一些异常现象,当涉及到在不同的文化解析他们使用string.Format
。对我来说,利用DateTime
对象上的ToString
方法一直更可靠。这只是我见过的 - 也可能是我在做string.Format
错误。我希望我现在能够建立一个例子,但我甚至不记得那些异常现在是什么 - 我只记得有问题,所以我切换。
'mmddyyHHmmss'应该是''MMddyyHHmmss' ss是Seconds' – MethodMan 2013-04-08 17:45:43