如何在C#中将日期转换为MM / DD / YY格式

在我的Asp.net网页中,我需要将今天的日期显示在其中一个文本框中,所以在我的表单加载中我写了下面的代码

textbox1.text = System.DateTime.Today.ToShortDateString(); 

这条线给我的日期像1/7/09,但我想要日期像01/07/09,无论如何,我可以在C#中将这个日期转换为mm / dd / yy格式吗?

  DateTime.Today.ToString("MM/dd/yy") 

查看自定义日期和时间格式字符串的文档以获取更多信息。

(哦,我希望这个应用程序不会注定其他文化。这种格式真的让很多人感到困惑……说实话,我从来没有理解整个月/日/年的事情。这看起来很奇怪在这样的规模方面走“中/低/高”。)

DateTime.Today.ToString( “MM / DD / YY”)

查看自定义日期和时间格式字符串的文档以获取更多信息。

(哦,我希望这个应用程序不会注定其他文化。这种格式真的让很多人感到困惑……说实话,我从来没有理解整个月/日/年的事情。这看起来很奇怪在这样的规模方面走“中/低/高”。)

其他文化确实是一个问题。 例如,portugues中的代码返回01 01-01而不是01/01/01。 我也不明白为什么……

要解决这个问题,我会这样做:

  IFormatProvider yyyymmddFormat = new System.Globalization.CultureInfo(String.Empty, false); return date.ToString("MM/dd/yy", yyyymmddFormat); 

你试过以下吗?:

 textbox1.text = System.DateTime.Today.ToString("MM/dd/yy"); 

请注意,未来两位数的年份可能会很糟糕……

研究使用具有指定格式的ToString()方法。

请参阅,此处您只能通过传递格式字符串来获取日期。 根据您的要求,您可以获得不同的日期格式,如下所示:

 DateTime.Now.ToString("M/d/yyyy"); 

结果: “9/1/2016”

 DateTime.Now.ToString("Md-yyyy"); 

结果: “9-1-2016”

 DateTime.Now.ToString("yyyy-MM-dd"); 

结果: “2016-09-01”

 DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); 

结果: “2016-09-01 09:20:10”

有关更多详细信息,请查看自定义日期和时间格式字符串的MSDN参考