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办法, 这个函数的⽇期格式取决于服务器的⽇期格式设置,是不确定的,有可能是纯字母的⽇期格式,所以为了程序保持⽇期格式统⼀,最好不使⽤这个函数。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。