C# ToShortDateString() ToString() 設置日期格式的區別


在C#中,ToShortDateString()是用於顯示短日期格式的方法,如果使用下面的語句:

Label1.Text = DateTime.Now.ToShortDateString();

那么,在Label1中會顯示什么樣的短日期格式呢?

答案是:不確定。

可能是:2013-07-26

也可能是:2013/07/26

也可能是:2013.07.26

等等等等,雖然許多文章中認為應該是“2013-07-26”,實際上,ToShortDateString()方法所顯示出的短日期字符串不是由它本身所能控制的,實際它是由所處區域及人為設置所影響的。

進入“控制面板”,打開“區域和語言”,在“格式”簽下可以看到短日期的設置方式,比如上述ToShortDateString()所產生的三種可能的輸入分別對應了:“yyyy-MM-dd”、“yyyy/MM/dd”、“yyyy.MM.dd”三種設置的短日期格式。

因此,電腦所處的區域不同,或者電腦用戶的個人偏好不同,而設置了不同的短日期格式,那么在C#開發的Windows應用或者Web應用,短日期就會以不同的格式顯示。

但在設計開發中,為了保持界面的統一性,往往希望短日期格式在任何情況下都是固定不變的,不使其受到用戶對短日期格式設置的影響。這時候,需要使用ToString的方式,強行指定日期的顯示格式,而不提取客戶機上用戶設定的格式。

具體使用方法是:

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

這樣做的結果,無論客戶機是什么樣的短日期格式設置,可以確定地說,這個日期的顯示格式必然是:

“2013-07-26”

 

同樣地,如果要在各種電腦上都顯示出統一的長日期、時間等信息,都可以使用ToString方法。

 

總結:如果強調統一的界面,可以使用ToString的辦法指定不變的日期或時間格式;如果考慮應用要靈活適應不同區域(比如可以全球訪問的網站)的用戶,則使用ToShortDateString辦法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM