我想以GBR格式获取今天的日期,但是,
DateTime.Now.ToString("dd/mm/yyyy");
返回08/00/2013
因此返回月份组中的00
而不是返回月份04
。
为什么会发生这种情况?
答案 0 :(得分:42)
低mm
表示分钟,所以
DateTime.Now.ToString("dd/MM/yyyy");
或
DateTime.Now.ToString("d");
或
DateTime.Now.ToShortDateString()
答案 1 :(得分:10)
答案 2 :(得分:4)
应该是MM
几个月。你要的是几分钟。
DateTime.Now.ToString("dd/MM/yyyy");
有关详细信息,请参阅MSDN上的Custom Date and Time Format Strings。
答案 3 :(得分:3)
使用MM
数月。 mm
只需几分钟。
DateTime.Now.ToString("dd/MM/yyyy");
您可能会在一小时开始运行此代码,例如(00:00
,05.00
,18.00
)和mm
给您的分钟(00
)日期时间。
来自Custom Date and Time Format Strings
“mm” - >分钟,从00到59.
“MM” - >这个月,从01到12。
这是DEMO
。 (第一行的月部分取决于您运行此代码的时间;)
)
答案 4 :(得分:2)
除了其他答案所说的内容之外,请注意“dd / MM / yyyy”中的'/'字符不是文字字符:它表示当前用户文化的日期分隔符。因此,如果当前文化使用yyyy-MM-dd日期,那么当您调用toString时,它将为您提供日期,例如“31-12-2016”(使用短划线而不是斜线)。要强制它使用斜杠,您需要转义该字符:
DateTime.Now.ToString("dd/MM/yyyy") --> "19-12-2016" for a Japanese user
DateTime.Now.ToString("dd/MM/yyyy") --> "19/12/2016" for a UK user
DateTime.Now.ToString("dd\\/MM\\/yyyy") --> "19/12/2016" independent of region
答案 5 :(得分:0)
只有很小的错误,请使用MM而不是mm,它将有效 编写如下:
@DateTime.Now.ToString("dd/MM/yyy")