如何在C#中以mm/dd/yyyy格式获得今天的日期?
我需要将一个字符串变量设置为今天的日期(最好不包含年份),但一次一个月/日地构建太麻烦了。
顺便说一句:我在美国,所以M/dd是正确的,例如9月11日是9/11。
注意:来自kronoz的回答涉及国际化问题,我认为这个回答很棒,因此也想提一下。
DateTime.Now.ToString("M/d/yyyy");
不要过于追求细节,但如果你需要国际化代码,为某个特定文化环境获取短日期的功能似乎更加有用,例如:
不要过度追求细节,如果您正在国际化代码,为给定文化环境获取简短日期的功能可能更加有用,例如:
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;
}
尽管显然 "m/dd/yyyy" 方法更加整洁!!
DateTime.Now.ToString("dd/MM/yyyy");
DateTime.Now.Date.ToShortDateString()
文化因素对此有影响。
最好使用以下内容:
DateTime.Now.ToString("d/MM/yyyy");
如果您不想包含年份:
DateTime.Now.ToString("MM/DD");
DateTime.ToString()有许多很酷的格式字符串:
string today = DateTime.Today.ToString("M/d");
DateTime.Now.Date.ToShortDateString()
或者不包括年份:
DateTime.Now.ToString("M/dd")