C#代码中{currentDate:d}里的:d格式符是什么含义
C# 中
{currentDate:d} 里的 :d 含义说明 这是C#里DateTime类型的标准短日期格式说明符,相关逻辑和解释如下:
你提到的入门示例代码:
Console.WriteLine("What is your name?"); var name = Console.ReadLine(); var currentDate = DateTime.Now; Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!"); Console.Write($"{Environment.NewLine}Press any key to exit..."); Console.ReadKey(true);
核心规则说明
- 插值字符串里冒号后面的内容是对应变量的格式字符串,针对
DateTime类型,单独的:d会被识别为短日期格式,输出时仅保留日期部分,格式自动匹配当前运行环境的区域文化设置:- 中文(中国)区域下典型输出为
2024/5/20这类年/月/日的短格式 - 英文(美国)区域下典型输出为
5/20/2024这类月/日/年的短格式
- 中文(中国)区域下典型输出为
- 同代码里的
:t是配套的短时间格式说明符,仅输出小时和分钟的短格式时间,同样匹配区域设置:- 中文区域下典型输出为
14:40这类24小时制时分 - 英文美国区域下典型输出为
2:40 PM这类12小时制时分
- 中文区域下典型输出为
- 注意区分:如果
d和其他自定义格式字符组合出现(比如yyyy-MM-dd),那单个d代表“月份中的第几天”的数值占位符;只有当格式字符串仅为单个d时,才会被解析为短日期标准格式,单个t同理对应短时间标准格式。
实际运行效果
在中文系统环境下运行代码,输入名字测试用户,对应行的输出效果为:
Hello, 测试用户, on 2024/5/20 at 14:42!
内容的提问来源于stack exchange,提问作者Partha Das
相关产品推荐
相关产品推荐

