如何在 C# 日期格式中格式化一位数月份?

Aar*_*nke 3 c# datetime date-formatting

在 C# 中,如果我运行此代码,它会打印出05

Console.WriteLine(DateTime.Now.ToString("MM"));
Run Code Online (Sandbox Code Playgroud)

但是,如果我运行此代码,它会打印出May 16

Console.WriteLine(DateTime.Now.ToString("M"));
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种可以打印的日期格式5。如何设置单位数字月份的格式?需要明确的是,第 1 至 9 个月为 1 位数字,第 10 至 12 个月为 2 位数字。

Han*_*ing 6

\xe2\x80\x9c%M"应该管用。查看自定义格式字符串

\n
\n

一些解释:

\n
    \n
  • “M”可以是自定义格式字符串的一部分,它表示一位或两位数字的“月份数字”
  • \n
  • 但就其本身而言,它也可以是一个标准格式字符串,意味着“月日模式”——正如OP发现的那样。
  • \n
\n

要解决此歧义,您可以添加一个空格,这使其成为自定义格式字符串,但也会向结果值添加一个空格。或者您可以添加一个%.

\n

现在(五月)DateTime.Now.ToString("%M")结果为“5”。

\n