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

C# ToShortDateString() ToString() 设置日期格式的区别的更多相关文章

  1. .Net如何在后台设置日期格式,并显示在前台页面上

    其实方法比较老咯,有比这个简单的朋友请留言哈,我的思路是先将数据库中的日期格式读出来,在后台转化成DatetTime类型,然后在使用DateTime的内部方法设置日期格式,代码如下: DateTime ...

  2. ★★★【卡法 常用js库】: js汇合 表单验证 cookie设置 日期格式 电话手机号码 email 整数 小数 金额 检查参数长度

    [卡法 常用js库]: js汇合 表单验证  cookie设置  日期格式  电话手机号码  email  整数  小数  金额   检查参数长度 // +---------------------- ...

  3. SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式

    java日期格式大全 format SimpleDateFormat(转) SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH ...

  4. (后端)excel设置日期格式的步骤

    在excel中设置日期格式,分直接设置和代码设置. 一.直接设置: 选取日期所在的单元格,单元格右键菜单中--设置单元格格式.在单元格格式窗口中选数字类型为“日期”在右边的列表框中选取相应的日期格式即 ...

  5. C#中如何设置日期格式

    在C#中,ToShortDateString()是用于显示短日期格式的方法,如果使用下面的语句: Label1.Text = DateTime.Now.ToShortDateString(); 那么, ...

  6. 【转】QT获取系统时间,以及设置日期格式

    http://blog.csdn.net/zzk197/article/details/7498593 例如我要在一个label上设置当前时间 QDateTime time = QDateTime:: ...

  7. js设置日期格式

    取数据时后台返回的日期数据是一串数字,前台显示时需要将时间格式化,通过以下代码转换. var format = function(time, format){    var t = new Date( ...

  8. datetimepicker 设置日期格式、初始化

    $('#datetimepicker').datetimepicker({ minView: "month", //选择日期后,不会再跳转去选择时分秒 language: 'zh- ...

  9. layui laydate 设置日期格式 最大值等

    laydate.render({ elem: "#jhsj", format: 'yyyy-MM', type: 'month', //显示月份 year 显示到年 max : & ...

随机推荐

  1. 【Java】 剑指offer(50-1) 字符串中第一个只出现一次的字符

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 在字符串中找出第一个只出现一次的字符.如输入"abacc ...

  2. JVM GC-----3、垃圾标记算法(二)

    在上一篇文章中,介绍了在GC机制中,GC是以什么标准判定对象可以被标记的,以及最有效最常用的可达性分析法.今天介绍另外一种非常常用的标记算法,它的应用面也相当广泛.这就是:引用计数法 Referenc ...

  3. compact 创建一个包含变量名为数组的键和它们的值为数组的值的数组

    $firstname = "Bill"; $lastname = "Gates"; $age = "60"; $result = compa ...

  4. 使用SQL语句从数据库一个表中随机获取数据

    -- 随机获取 10 条数据 SQL Server:SELECT TOP 10 * FROM T_USER ORDER BY NEWID() ORACLE:SELECT * FROM (SELECT ...

  5. 使用element-ui制作三级级联城市选择器

    1.效果预览: 2.引入资源文件 1.vue资源 <script src="https://unpkg.com/vue/dist/vue.js"></script ...

  6. DB2<RedHed Linux> 创建数据库

    1 DB2 安装后组情况 Users User Desc Username Home folder Password Group   Administration User -dasusr1 /hom ...

  7. JAVA编程:字符串转为数字求和

    程序从命令行接入数字,求和,如果接入的是字符串的解决办法 设计思想: 首先定义一个double类型的一维数组,然后在定义一个double型的变量sum,并赋值为0,用if循环判断从命令行是否有参数输入 ...

  8. Python学习——深浅拷贝

    1.对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. >>> import copy # ######### 数字.字符串 ######### ...

  9. BZOJ.4894.天赋(Matrix Tree定理 辗转相除)

    题目链接 有向图生成树个数.矩阵树定理,复习下. 和无向图不同的是,度数矩阵改为入度矩阵/出度矩阵,分别对应外向树/内向树. 删掉第i行第i列表示以i为根节点的生成树个数,所以必须删掉第1行第1列. ...

  10. HTML5开发学习:本地存储Web Sql Database

       Web Sql Database,中文翻译作"本地数据库",是随着HTML5规范加入的在浏览器端运行的轻量级数据库.    在HTML5中,大大丰富了客户端本地可以存储的内容 ...