我如何以mm/dd/yyyy格式以C#获取今天的日期?
我需要将一个字符串变量设置为今天的日期(最好没有年份),但是必须有一个更好的方法,而不是每月构建一个 - / - 一次一个.
顺便说一句:我在美国,所以M/dd是正确的,例如9月11日是9/11.
注意: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
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"的方法相当简洁!
DateTime.Now.Date.ToShortDateString()
Run Code Online (Sandbox Code Playgroud)
是文化特定的.
最好坚持:
DateTime.Now.ToString("d/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)
如果你想要没有年份:
DateTime.Now.ToString("MM/DD");
Run Code Online (Sandbox Code Playgroud)
DateTime.ToString()有很多很酷的格式字符串:
http://msdn.microsoft.com/en-us/library/aa326721.aspx