[英]MM/dd/yyyy format
我有以下內容:
PMRCutoffDate.Value = ReportCalc.Cutoff_Date.ToString("MM/dd/yyyy");
PMRDate.Value = DateTime.Now.ToString("MM/dd/yyyy");
我希望日期顯示為:03/05/2010,而非2010年3月5日或2010年5月5日或2010年5月3日
但是,我的程序STILL錯誤地顯示日期(2010年3月10日)。
關於什么是錯的任何想法?
在VS 2008中,我有以下代碼和您正在尋找的輸出。 你能發布更多信息嗎? 碼:
Console.WriteLine(DateTime.Now.ToString("MM/dd/yyyy"));
輸出:
03/10/2010
根據這篇文章,您可以使用String.format或DateTime.toString填充日期,如下所示:
String.Format("{0:MM/dd/yyyy}", dt);
如果日期格式已更改,請檢入“控制面板”的“區域和語言選項”小程序。 通過使用DateTime.ToString()重載中的CultureInfo.InvariantCulture.DateTimeFormat屬性,您應該能夠將自己與這些覆蓋或不尋常的文化屬性隔離開來。
Textbox1.Text = DateTime.Today.ToString("MM/dd/yyyy",CultureInfo.InvariantCulture);
OUTPUT: 09/18/2015
上面的回復應該可以幫助你,但如果沒有,你仍然遇到問題,你可以為DateTime創建以下擴展方法,並強制它以你需要的格式,無論文化設置如何:
public static class StringExtension
{
static public string ToStringFormatted(this DateTime dt)
{
return string.Format("{0:00}/{1:00}/{2:0000}", dt.Month, dt.Day, dt.Year);
}
// if the culture info change does fix your issue do:
static public string ToStringFormatted2(this DateTime dt)
{
return dt.ToString("MM/dd/yyyy");
}
}
// useage:
string date = DateTime.Now.ToStringFormatted();
// output: 03/10/2010
我更喜歡擴展方法來格式化日期之類的東西,因為有人總是想要在某些時候更改格式,我只需要更改擴展名,我的整個應用程序現在都反映了新的格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.