标准日期格式与自定义日期格式

时间:2014-06-26 13:16:05

标签: c# date format date-format

我提供了一个应用程序,用户可以通过任何给定的格式字符串格式化任何日期。 我发现的问题如下:

让我们说,我想将日期格式化为单月索引。这就是今天" 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

问题:如何强制将给定格式字符串解释为自定义格式说明符?

1 个答案:

答案 0 :(得分:4)

在第二种情况下,您需要通过提供M标志来指定%是自定义格式说明符:

Console.WriteLine(DateTime.Today.ToString("%M"));

打印:

  

6

根据MSDN: Custom Date and Time Format StringsMSDN: Using Single Custom Format Specifiers%标志:

  

将以下字符定义为自定义格式说明符。

我想如果用户可以指定字符串,则应始终使用%转义它。