C#中DateTime格式化最常用方式是ToString()方法,支持预定义标准格式符(如”d”短日期、”D”长日期)和自定义格式字符串(如”yyyy-MM-dd HH:mm:ss”),并可通过CultureInfo指定文化信息确保本地化一致性。

C# 中对 DateTime 进行格式化,最常用、最直接的方式就是调用 ToString() 方法,并传入格式字符串或格式说明符。它灵活、高效,且支持自定义和预设格式。
使用预定义标准格式说明符
标准格式说明符是单个字母(如 "d"、"D"、"t"),对应系统区域设置下的常见日期时间样式:
dt.ToString("d") → 短日期(如:2024/5/20)dt.ToString("D") → 长日期(如:2024年5月20日 星期一)dt.ToString("t") → 短时间(如:14:30)dt.ToString("T") → 长时间(如:14:30:25)dt.ToString("f") → 全日期+短时间(如:2024年5月20日 星期一 14:30)dt.ToString("F") → 全日期+长时间(含秒,如:2024年5月20日 星期一 14:30:25)dt.ToString("g") → 常规日期+短时间(如:2024/5/20 14:30)dt.ToString("G") → 常规日期+长时间(如:2024/5/20 14:30:25)
使用自定义格式字符串
用字母组合精确控制每个部分,大小写敏感,常用占位符有:
"yyyy" → 4位年份(2024),"yy" → 2位(24)"MM" → 补零月(05),"M" → 不补零(5)"dd" → 补零日,"d" → 不补零"HH" → 24小时制小时(14),"hh" → 12小时制(02)"mm" → 分钟,"ss" → 秒,"fff" → 毫秒(三位)"tt" → AM/PM(英文),中文环境下建议用 "上午"/"下午" 文字字面量文字内容用单引号包裹,如:"yyyy年'M'月'd'日 HH:mm:ss" → 2024年M月20日 14:30:25
指定文化信息(CultureInfo)避免本地化偏差
不指定时默认用当前线程文化(可能影响星期、月份名称、分隔符)。如需固定输出(比如始终英文或始终中文),显式传入:
dt.ToString("D", new CultureInfo("en-US")) → Monday, May 20, 2024dt.ToString("D", new CultureInfo("zh-CN")) → 2024年5月20日 星期一也可用 CultureInfo.InvariantCulture 获取与区域无关的英文格式(如 ISO 标准)
安全格式化:避免异常的推荐写法
直接调用 ToString(string) 不会抛异常,但若格式字符串非法(如错用双引号、未闭合引号),会在运行时报错。建议:
优先使用标准格式符("G"、"s" 等)——安全、简洁、可读性高自定义格式尽量用字符串字面量,避免拼接;调试时可用 DateTime.Now.ToString("o")(往返格式,ISO 8601)快速验证需要兼容多种语言时,统一管理格式字符串,或封装为扩展方法
基本上就这些。掌握标准符 + 几个关键自定义符号(yyyy、MM、dd、HH、mm、ss),再注意文化上下文,日常开发已完全够用。
以上就是C#怎么进行日期时间格式化 C# DateTime.ToString格式化方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1443184.html
微信扫一扫
支付宝扫一扫