C# 为什么是;YYYY-MM-DD HH';:';MM';:';SS";日期时间格式显示不正确?
上述指定的格式显示以下不正确的日期格式: YYYY-11-DD 21:11:SS 为什么一年、一天和一秒都不能正确地显示出来?请提供我如何解决上述问题的建议。C# 为什么是;YYYY-MM-DD HH';:';MM';:';SS";日期时间格式显示不正确?,c#,datetime,timezone,datetime-format,C#,Datetime,Timezone,Datetime Format,上述指定的格式显示以下不正确的日期格式: YYYY-11-DD 21:11:SS 为什么一年、一天和一秒都不能正确地显示出来?请提供我如何解决上述问题的建议。 因为它的小写字母y表示年份,而不是大写字母y Day的情况也是如此,它的小写字母d不是大写字母d 分钟的小写字母m不是大写字母m,大写字母m是 一个月来 在几秒钟内,它是小写的s,而不是大写的s 同时删除格式中的单引号,因为您不想转义字符串文字 见: 因此,您的格式应为: DateTime timeUtcWhenCommentPost
- 因为它的小写字母
表示年份,而不是大写字母y
y
- Day的情况也是如此,它的小写字母
不是大写字母d
d
- 分钟的小写字母
不是大写字母m
,大写字母m
是 一个月来m
- 在几秒钟内,它是小写的
,而不是大写的s
s
- 同时删除格式中的单引号,因为您不想转义字符串文字
DateTime timeUtcWhenCommentPostingOccurred = getDateAndTimeOfCommentPostingInUtc();
DateTime estTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtcWhenCommentPostingOccurred, estZone);
estTime.ToString("YYYY-MM-DD HH':'MM':'SS");
你对护理很敏感YYYY
、DD
和SS
是不可识别的DateTime
格式字符串,因此它们被视为文字字符
使用
相反
请注意MM
(月)和MM
(分钟)之间的区别。C#区分大小写,大小写在日期时间格式字符串中具有含义
yyy
是年,MM
是月,dd
是日,MM
是分。大写字母HH
表示24小时时钟。这将给出预期的输出:
estTime.ToString("yyyy-MM-dd HH:mm:ss");
试试这个:
string output = estTime.ToString("yyyy-MM-dd HH:mm:ss");
C#区分大小写,格式字符串也区分大小写
另外,请检查此选项是否有用。您的案例有误:
estTime.ToString("yyyy-MM-dd HH:mm:ss");
estTime.ToString("yyyy-MM-dd HH':'mm':'ss");
有关完整参考,请查看MSDN文章。尝试:
estTime.ToString("yyyy-MM-dd HH':'mm':'ss");
estTime.ToString("yyyy-MM-dd HH':'mm':'ss");