基于时区在 C# 中设置日期时间,例如 +08:00
Set Datetime in C# based on Timezone like +08:00
我创建了这样的当前日期时间。
DateTime now = DateTime.UtcNow;
现在我想将其转换为不同的时区。但我得到的时区值如 +05:30、+07:00 等。
那么如何使用这种时区值将这个现在值转换为特定时区日期。
谢谢
您需要 DateTimeOffset.ToOffset(TimeSpan) 将 Utc 转换为您想要的时区。
DateTime now = DateTime.UtcNow;
DateTimeOffset dtoUtc = new DateTimeOffset(now);
TimeSpan offset = new TimeSpan(+5, 00, 00); // Specify timezone
var dtToSpecificTimezone = dtoUtc.ToOffset(offset);
Console.WriteLine(dtToSpecificTimezone.ToString());
输出:
7/11/2021 3:02:10 PM +05:00
我创建了这样的当前日期时间。
DateTime now = DateTime.UtcNow;
现在我想将其转换为不同的时区。但我得到的时区值如 +05:30、+07:00 等。
那么如何使用这种时区值将这个现在值转换为特定时区日期。
谢谢
您需要 DateTimeOffset.ToOffset(TimeSpan) 将 Utc 转换为您想要的时区。
DateTime now = DateTime.UtcNow;
DateTimeOffset dtoUtc = new DateTimeOffset(now);
TimeSpan offset = new TimeSpan(+5, 00, 00); // Specify timezone
var dtToSpecificTimezone = dtoUtc.ToOffset(offset);
Console.WriteLine(dtToSpecificTimezone.ToString());
输出:
7/11/2021 3:02:10 PM +05:00