我提供了一个应用程序,用户可以通过任何给定的格式字符串格式化任何日期。 我发现的问题如下:
让我们说,我想将日期格式化为单月索引。这就是今天" 6"。
但:
DateTime.Today.ToString("dd.MM.yyyy") => 26.06.2014<br/>
DateTime.Today.ToString("M") => **26 Juni**<br/>
DateTime.Today.ToString("dM") => 266
使用msdn我发现了,&#34; M&#34;是 - 如果使用单数 - 标准格式说明符,但如果与其他字符一起使用,则其自定义格式说明符(http://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx; http://msdn.microsoft.com/en-us/library/8kb3ddd4(v=vs.110).aspx)
问题:如何强制将给定格式字符串解释为自定义格式说明符?
答案 0 :(得分:4)
在第二种情况下,您需要通过提供M
标志来指定%
是自定义格式说明符:
Console.WriteLine(DateTime.Today.ToString("%M"));
打印:
6
根据MSDN: Custom Date and Time Format Strings和MSDN: Using Single Custom Format Specifiers,%
标志:
将以下字符定义为自定义格式说明符。
我想如果用户可以指定字符串,则应始终使用%
转义它。