You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#设置中文区域文化后,如何输出带中文年月日的日期格式

C# 实现中文年月日格式的日期输出

你设置中文区域文化后,直接输出DateTime对象会使用系统默认的短日期+时间组合格式,要得到2023年3月22日这类格式,需要显式指定日期格式,以下是两种可行方案:

方案1:使用自定义格式字符串

直接通过ToString方法指定精准的格式模板,不受当前文化设置影响,适合固定格式需求:

CultureInfo culture = new CultureInfo("zh-CN", true);
System.Threading.Thread.CurrentThread.CurrentCulture = culture;
System.Threading.Thread.CurrentThread.CurrentUICulture = culture;

DateTime dt = DateTime.Now;
// 指定自定义格式,yyyy代表4位年份,MM代表2位月份,dd代表2位日期
string formattedDate = dt.ToString("yyyy年MM月dd日");
Console.WriteLine(formattedDate); // 输出示例:2023年3月22日

方案2:利用中文区域的标准日期格式

如果想基于中文区域的标准格式输出(默认长日期格式会包含星期),可以使用格式符D:

// 基于当前已设置的zh-CN文化输出长日期
string longDate = dt.ToString("D");
Console.WriteLine(longDate); // 输出示例:2023年3月22日 星期三

// 若只需要年月日部分,方案1的自定义格式更直接

补充说明

设置CurrentCulture和CurrentUICulture主要是让系统的默认本地化行为(如数字、货币格式,资源文件加载)遵循中文区域,但DateTime的默认ToString()输出是短日期加时间的组合格式,必须显式指定格式才能得到你需要的中文年月日样式。

内容的提问来源于stack exchange,提问作者Khan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 06:18:08