对于
DateTime aDate = new DateTime(2000,1,1);
Console.WriteLine(aDate.ToString("d"));
我希望有1
,但它会写成1/1/2000
。
MSDN说:
d
每月的某天,从1到31。
2009-06-01T13:45:30
-> 1
2009-06-15T13:45:30
-> 15
有什么解决方法吗?与M
相同。
答案 0 :(得分:8)
来自docs:
如果在不使用其他自定义格式说明符的情况下使用“ d”格式说明符,则将其解释为“ d”标准日期和时间格式说明符。
“ d”是The Short Date ("d") Format Specifier
如果您只需要每月的某天,则有DateTime.Day
:
Console.WriteLine(aDate.Day);
或者,您可以在格式字符串前面加上%:
Console.WriteLine(aDate.ToString("%d"));
答案 1 :(得分:0)
您已经创建了DateTime对象,因此可以从aDate.Day或aDate.Month访问它的属性,如果您想从datetime对象中获取day属性,则可以直接访问
Console.WriteLine(aDate.Days.ToString()); // in your case
答案 2 :(得分:0)
您的路线正确。要仅打印日期,您必须改为:
Console.WriteLine(aDate.ToString("dd"));
这个月应该是:
Console.WriteLine(aDate.ToString("MM"));
答案 3 :(得分:0)
解决方案是:
Console.WriteLine(aDate.ToString(" d"));
在这里重要的是:和d之间的空格。和M一样。