我如何以mm/dd/yyyy格式以C#获取今天的日期?

Ken*_*eng 97 c# date

我如何以mm/dd/yyyy格式以C#获取今天的日期?

我需要将一个字符串变量设置为今天的日期(最好没有年份),但是必须有一个更好的方法,而不是每月构建一个 - / - 一次一个.

顺便说一句:我在美国,所以M/dd是正确的,例如9月11日是9/11.

注意:kronoz的答案来自于讨论的国际化,我认为它非常棒,因为我不能把它作为一个"接受"的答案.

kronoz的回答

Joe*_*orn 186

DateTime.Now.ToString("M/d/yyyy");
Run Code Online (Sandbox Code Playgroud)

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

  • hh:mm:ss 给出时间。DateTime.Now.ToString("M/d/yyyy hh:mm:ss"); (2认同)

ljs*_*ljs 23

不要非常迂腐,但如果你正在使代码国际化,那么拥有设施来获得特定文化的短期日期可能更有用,例如: -

using System.Globalization;
using System.Threading;

...

var currentCulture = Thread.CurrentThread.CurrentCulture;
try {
  Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-us");
  string shortDateString = DateTime.Now.ToShortDateString();
  // Do something with shortDateString...
} finally {
  Thread.CurrentThread.CurrentCulture = currentCulture;
}
Run Code Online (Sandbox Code Playgroud)

虽然显然"m/dd/yyyy"的方法相当简洁!


Cor*_*kie 12

DateTime.Now.ToString("dd/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)


Cor*_*kie 8

DateTime.Now.Date.ToShortDateString()
Run Code Online (Sandbox Code Playgroud)

是文化特定的.

最好坚持:

DateTime.Now.ToString("d/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)


Fly*_*wat 8

如果你想要没有年份:

DateTime.Now.ToString("MM/DD");
Run Code Online (Sandbox Code Playgroud)

DateTime.ToString()有很多很酷的格式字符串:

http://msdn.microsoft.com/en-us/library/aa326721.aspx


Bil*_* Jo 7

string today = DateTime.Today.ToString("M/d");
Run Code Online (Sandbox Code Playgroud)


Jos*_*ein 5

DateTime.Now.Date.ToShortDateString()
Run Code Online (Sandbox Code Playgroud)

我想这就是你要找的