首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据时区显示日期时间?

如何根据时区显示日期时间?
EN

Stack Overflow用户
提问于 2016-07-04 07:35:40
回答 1查看 97关注 0票数 0

现在是墨尔本时间下午5:30在洛杉矶是早上12:30。

此时将创建一个数据库记录。它有一个"creation_datetime“时间戳。

当墨尔本的顾客看到时间戳时,我想展示的是"2016-07-04 17:30 (UTC+10:00)“。当洛杉矶的客户看到时间,我想显示"2016-07-04 00:30 (UTC-8:00)“。

假设函数"getRecordTimeStamp(123)“以DateTime的形式返回时间戳,其中"123”是记录ID。如何在C#中生成"2016-07-04 17:30 (UTC+10:00)“和"2016-07-04 00:30 (UTC-8:00)”?

EN

回答 1

Stack Overflow用户

发布于 2016-07-04 08:10:49

我算出来了:

代码语言:javascript
复制
DateTime now = DateTime.Now;
DateTime utcTimeNow = TimeZoneInfo.ConvertTimeToUtc(now);

TimeZoneInfo melbourneTimeZone = TimeZoneInfo.FindSystemTimeZoneById("E. Australia Standard Time");
DateTime melbourneTime = TimeZoneInfo.ConvertTimeFromUtc(utcTimeNow, melbourneTimeZone);
Console.WriteLine("The date and time are {0} {1}.", melbourneTime, melbourneTimeZone.IsDaylightSavingTime(melbourneTime) ? melbourneTimeZone.DaylightName : melbourneTimeZone.StandardName);

TimeZoneInfo laTimeZone = TimeZoneInfo.FindSystemTimeZoneById("Pacific Standard Time");
DateTime laTime = TimeZoneInfo.ConvertTimeFromUtc(utcTimeNow, laTimeZone);
Console.WriteLine("The date and time are {0} {1}.", laTime, laTimeZone.IsDaylightSavingTime(laTime) ? laTimeZone.DaylightName : laTimeZone.StandardName);


Console.ReadKey();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38179183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档