源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

深入理解C# DateTime日期格式化

  • 时间:2021-07-14 12:52 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:深入理解C# DateTime日期格式化
在C#中DateTime是一个包含日期、时间的类型,此类型通过ToString()转换为字符串时,可根据传入给Tostring()的参数转换为多种字符串格式。 [b]1. 分类[/b] DateTime调用ToString()传入的参数可分为制式和自定义两种: 1) 制式:系统自带的,转入特定的单个字符就可转换为系统已设定好的格式。 2) 自定义:自由组合日期代码(y、M、d、h、m、s、f)来展示丰富的日期格式。  [b]2. 制式类型[/b] 说明:转入特定的单个字符就可转换为系统已设定好的格式。 [b]2.1 格式来源[/b] 在Windows系统中的区域和语言(位置:控制面板 → 区域和语言)选项中可设置日期和时间的格式。 可设置的分类有:短日期、长日期、短时间、长时间等。 调用ToString()进行转换时,许多转换方式都是通过上面的4个分类进行组合。 [b]2.2 符号对照表[/b] 2.2.1 环境 .net版本:4.0 系统版本:Win7 格式信息: [img]http://files.jb51.net/file_images/article/201701/2017011015190438.png[/img] 2.2.2 对照表
[b]      符号    [/b] [b]  语法  [/b] [b]示例(2016-05-09 13:09:55:2350)[/b] [b]格式说明[/b]
[b]y[/b] DateTime.Now.ToString() 2016/5/9 13:09:55 短日期 长时间
[b]d[/b] DateTime.Now.ToString("[b]d[/b]") 2016/5/9 短日期
[b]D[/b] DateTime.Now.ToString("[b]D[/b]") 2016年5月9日 长日期
[b]f[/b] DateTime.Now.ToString("[b]f[/b]") 2016年5月9日 13:09 长日期 短时间
[b]F[/b] DateTime.Now.ToString("[b]F[/b]") 2016年5月9日 13:09:55 长日期 长时间
[b]g[/b] DateTime.Now.ToString("[b]g[/b]") 2016/5/9 13:09 短日期 短时间
[b]G[/b] DateTime.Now.ToString("[b]G[/b]")  2016/5/9 13:09:55 短日期 长时间
[b]t[/b] DateTime.Now.ToString("[b]t[/b]") 13:09 短时间
[b]T[/b] DateTime.Now.ToString("[b]T[/b]") 13:09:55 长时间
[b]u[/b] DateTime.Now.ToString("[b]u[/b]") 2016-05-09 13:09:55Z  
[b]U[/b] DateTime.Now.ToString("[b]U[/b]") 2016年5月9日 5:09:55 本初子午线的长日期和长时间
[b]m[/b] DateTime.Now.ToString("[b]m[/b]") 5月9日  
[b]M[/b] DateTime.Now.ToString("[b]M[/b]") 5月9日  
[b]r[/b] DateTime.Now.ToString("[b]r[/b]") Mon, 09 May 2016 13:09:55 GMT  
[b]R[/b] DateTime.Now.ToString("[b]R[/b]") Mon, 09 May 2016 13:09:55 GMT  
[b]y[/b] DateTime.Now.ToString("[b]y[/b]") 2016年5月  
[b]Y[/b] DateTime.Now.ToString("[b]Y[/b]") 2016年5月  
[b]o[/b] DateTime.Now.ToString("[b]o[/b]") 2016-05-09T13:09:55.2350000  
[b]O[/b] DateTime.Now.ToString("[b]O[/b]") 2016-05-09T13:09:55.2350000  
[b]s[/b] DateTime.Now.ToString("[b]s[/b]") 2016-05-09T13:09:55  
[b]2.3 示例图[/b] [img]http://files.jb51.net/file_images/article/201701/2017011015190439.png[/img] [b]2.4 win2003版本[/b] 在Win2003默认中的无字符、d、g、G格式中会用'-'符号替代'/'符号(短日期格式为:yyyy-m-d)。 [img]http://files.jb51.net/file_images/article/201701/2017011015190440.png[/img] [b]3. 自定义格式类型[/b] 开发人员可通过英文字符(y、M、d、h、m、s、f) 分别代替(年、月、日、时、分、秒、毫秒)来自由组合日期时间格式。 3.1 符号对照表 .net版本:4.0 系统版本:Win7
[b]符号  [/b] [b]说明 [/b] [b]语法[/b] [b]示例(2016-05-09 13:09:55:2350)[/b]
[b]yy[/b] 年份后两位 DateTime.Now.ToString("[b]yy[/b]") DateTime.Now.ToString("yy"); // => 16
[b]yyyy[/b] 4位年份 DateTime.Now.ToString("[b]yyyy[/b]") DateTime.Now.ToString("yyyy"); // => 2016
[b]MM[/b] 两位月份;单数月份前面用0填充 DateTime.Now.ToString("[b]MM[/b]") DateTime.Now.ToString("MM"); // => 05
[b]dd[/b] 日数 DateTime.Now.ToString("[b]dd[/b]") DateTime.Now.ToString("dd"); // => 09
[b]ddd[/b] 周几 DateTime.Now.ToString("[b]ddd[/b]") DateTime.Now.ToString("ddd"); // => 周一
[b]dddd[/b] 星期几 DateTime.Now.ToString("[b]dddd[/b]") DateTime.Now.ToString("dddd"); // => 星期一
[b]hh[/b] 12小时制的小时数 DateTime.Now.ToString("[b]hh[/b]")  DateTime.Now.ToString("hh"); // => 01
[b]HH[/b] 24小时制的小时数 DateTime.Now.ToString("[b]HH[/b]") DateTime.Now.ToString("HH"); // => 13
[b]mm[/b] 分钟数 DateTime.Now.ToString("[b]mm[/b]") DateTime.Now.ToString("mm"); // => 09
[b]ss[/b] 秒数 DateTime.Now.ToString("[b]ss[/b]") DateTime.Now.ToString("ss"); // => 55
[b]ff[/b] 毫秒数前2位 DateTime.Now.ToString("[b]ff[/b]") DateTime.Now.ToString("ff"); // => 23
[b]fff[/b] 毫秒数前3位 DateTime.Now.ToString("[b]fff[/b]") DateTime.Now.ToString("fff"); // => 235
[b]ffff[/b] 毫秒数前4位 DateTime.Now.ToString("[b]ffff[/b]") DateTime.Now.ToString("ffff"); // => 2350
[b]分隔符 [/b]

可使用分隔符来分隔年月日时分秒。 包含的值可为:-、/、:等非关键字符

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); // => 2016-05-09 13:09:55:2350 DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss:ffff"); // => 2016/05/09 13:09:55:2350 DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss:ffff dddd"); // => 2016/05/09 13:09:55:2350 星期一

3.2 示例图 [img]http://files.jb51.net/file_images/article/201701/2017011015190441.png[/img] 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部