【发布时间】:2011-06-20 05:09:49
【问题描述】:
我需要像这样格式化日期:20110202192008-0500。以下代码可以解决问题,但我想知道在 c# 3.5 中是否有更好/更清洁的方法来做到这一点。谢谢!!
var date = DateTime.Now;
var strDate = TimeZoneInfo.ConvertTimeToUtc(date).ToString("yyyyMMddHHmmss");
var offsetHours = TimeZoneInfo.Local.GetUtcOffset(date).Hours.ToString("00");
var offsetMinutes = TimeZoneInfo.Local.GetUtcOffset(date).Minutes.ToString("00");
Console.Write(string.Concat(strDate, offsetHours, offsetMinutes));
【问题讨论】:
-
只是为了确保我做对了:您要显示 UTC 日期和时间,然后提供偏移量以便读者自己进行数学计算? (因此示例显示当地时间 14:20:08。)
-
完全正确。只是想知道是否有更简洁的方法来获取字符串。
标签: c# datetime formatting timezone