c# - 如何从给定时区获取特定日期的 UTC 偏移量
问题描述
这是一个具体的例子。
日期:1963 年 8 月 8 日上午 5:37 时区:美国/芝加哥
在这个给定的日期和时区,UTC 偏移量为 -6。但我从 NodaTime 得到-5。
我尝试了多种使用 NodaTime 计算 UTC 偏移量的方法,但它们都返回 -5。下面只是我尝试过的一件这样的事情。
var zone = DateTimeZoneProviders.Tzdb[timeZone];
var localDateTime = LocalDateTime.FromDateTime(localEventDateTime);
ZoneLocalMappingResolvr customResolver = Resolvers.CreateMappingsolver(Resolvers.ReturnLater, Resolvers.ReturnStartOfIntervalAfter);
var zonedDateTime = zone.ResolveLocal(localDateTime, customResolver);
var result = zonedDateTime.ToDateTimeUtc();
我可以使用什么代码来实现这一点?
解决方案
推荐阅读
- dart - 画布未在 Flutter 中绘制图像
- android - Dex:将字节码转换为dex时出错:原因:Dex无法在unity andorid build中解析版本52字节码
- ios - 使用 Ionic 在 iOS 应用程序中启动后出现黑屏
- c# - c# wpf datagrid 将特定列导出到文本文件
- html - css flexbox布局 - 如何滚动内部容器?
- regex - 文本之间有多个重复元素
- django - 403 由石墨烯-django 提供。不要使用 csrf_exempt
- python - 烧瓶将访问者 ip 打印到控制台或保存为 JSON 文件
- java - 在java中,当我们只知道组件类时如何构造一个数组
- elasticsearch - ElasticSearch 中索引关闭的用例是什么?