DateTime timeUtcWhenCommentPostingOccurred = getDateAndTimeOfCommentPostingInUtc();
DateTime estTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtcWhenCommentPostingOccurred, estZone);
estTime.ToString("YYYY-MM-DD HH':'MM':'SS");
以上指定的格式显示以下不正确的日期格式:
YYYY-11-DD 21:11:SS
为什么年,日和秒都无法正常显示?请提供有关我如何解决上述问题的建议。
答案 0 :(得分:10)
y
,而不是大写Y
。d
不是大写D
m
不是大写M
,大写M
是
一个月,s
,而不是大写S
请参阅:Custom Date and Time Format Strings
所以你的格式应该是:
estTime.ToString("yyyy-MM-dd HH:mm:ss");
答案 1 :(得分:3)
Format strings对护理很敏感。 YYYY
,DD
和SS
无法识别DateTime
的格式字符串,因此将它们视为文字字符。
使用
estTime.ToString("yyyy-MM-dd HH:mm:ss");
代替。
请注意MM
(月)和mm
(分钟)之间的区别。
答案 2 :(得分:2)
答案 3 :(得分:1)
C#区分大小写,并且该案例在日期时间格式字符串中有意义。
yyyy
是年份,MM
月份,dd
日期和mm
分钟。大写HH
表示24小时制。这给出了预期的输出:
string output = estTime.ToString("yyyy-MM-dd HH:mm:ss");
答案 4 :(得分:1)
你弄错了:
estTime.ToString("yyyy-MM-dd HH':'mm':'ss");
答案 5 :(得分:1)
有关完整参考检查this MSDN文章。尝试:
estTime.ToString("yyyy-MM-dd HH':'mm':'ss");