为什么这两种日期格式不同?

les*_*ode 2 .net c# formatting datetime

我试图在WPF文本块中只生成日期编号,没有前导零并且没有额外的空格填充(这会抛弃布局).第一个产生带有空格的日期编号,第二个产生整个日期.根据文档,'d'应该产生一天(1-31).

string.Format("{0:d }", DateTime.Today);
string.Format("{0:d}", DateTime.Today);
Run Code Online (Sandbox Code Playgroud)

更新:添加%确实是诀窍.这里有适当的文档.

Rob*_*son 5

看到这里

d,%d

这个月的哪一天.单位数天没有前导零.如果格式模式未与其他格式模式组合,则应用程序指定"%d".

否则d被解释为:

d - 'ShortDatePattern'

PS.对于搞乱格式字符串,使用LinqPad是非常宝贵的.