C#如何将DateTime格式化为指定的完整日期长时间格式
C# DateTime格式化完整日期长时间方案
你需要的「完整日期长时间」格式有两种实现方式:
方式1:使用标准格式符F
F是.NET内置的对应完整日期长时间的标准格式标识,在en-US区域下默认输出和你需求几乎一致的结果:
using System; using System.Globalization; public class Program { public static void Main() { DateTime date = new DateTime(2023, 11, 27, 18, 08, 0); Console.WriteLine( date.ToString("F", CultureInfo.CreateSpecificCulture("en-US")) ); // 输出:Monday, 27 November 2023 6:08:00 PM } }
方式2:自定义格式串实现完全匹配
如果需要去掉标准F格式中星期后的逗号,同时统一小时为两位显示,使用自定义格式串dddd dd MMMM yyyy hh:mm:ss tt即可完全匹配你给出的预期效果:
date.ToString("dddd dd MMMM yyyy hh:mm:ss tt", CultureInfo.CreateSpecificCulture("en-US")) // 输出:Monday 27 November 2023 06:08:00 PM
各自定义格式符含义:
dddd:完整星期名称dd:两位日期数值MMMM:完整月份名称yyyy:四位年份数值hh:12小时制两位小时mm:两位分钟数值ss:两位秒数值tt:AM/PM标识
注意:你示例代码中使用单引号包裹格式串属于语法错误,C#中字符串常量必须使用双引号包裹。
内容的提问来源于stack exchange,提问作者K. K
相关产品推荐
相关产品推荐

