gpt4 book ai didi

geolocation - 如何使用纬度和经度坐标从某个位置获取时区?

转载 作者:行者123 更新时间:2023-12-03 04:01:58 25 4
gpt4 key购买 nike

给定位置的纬度和经度,如何知道该位置的有效时区?
在大多数情况下,我们正在寻找 IANA/Olson 时区 ID,尽管某些服务可能仅返回 UTC 偏移量或其他一些时区标识符。请阅读 timezone tag info详情。

最佳答案

时区位置 Web 服务

  • Google Maps Time Zone API
  • Bing Maps Time Zone API
  • Azure Maps Time Zone API
  • GeoNames Time Zone API
  • TimeZoneDB API
  • AskGeo - 商业(但 arguably more accurate than GeoNames)
  • GeoGarage Time Zone API - 商业,专注于航海时区。

  • 原始时区边界数据
  • Timezone Boundary Builder - 从 OpenStreetMaps map 数据构建时区 shapefile。包括海岸线附近的领海。

  • 以下项目以前是时区边界数据的来源,但不再积极维护。
  • tz_world - 来自 Eric Muller 的原始 shapefile 数据
  • whereonearth-timezone - 合并了 WOEDB 数据的 GeoJSON 版本

  • 时区地理定位离线实现
    使用 Timezone Boundary Builder 数据的实现
  • node-geo-tz - JavaScript 库(仅限 Node.js)
  • timespace - JavaScript 库
  • tz-lookup-oss - JavaScript 库
  • GeoTimeZone - .NET 库
  • Geo-Timezone - PHP 库
  • timezonefinder - Python 库
  • ZoneDetect - C 库
  • Timeshape - Java 库
  • TimeZoneMap - Java 和 Android 库
  • lutz - R库
  • go-tz - 去图书馆
  • Timezone lookup - 去图书馆
  • docker-timezone-lookup - docker 容器包装 node-geo-tz

  • 使用旧的 tz_world 数据的实现
  • latlong - 去图书馆(阅读 this post 也。)
  • TimeZoneMapper - Java 库
  • tzwhere - JavaScript/节点库
  • pytzwhere - Python 库
  • timezone_finder - Ruby 库
  • LatLongToTimeZone - Java 和 Swift 库
  • What Time is it here? - 描述 PHP 和 MongoDB 的博客文章
  • rundel/timezone - R库

  • 调用 Web 服务之一的库
  • timezone - 调用 GeoNames 的 Ruby gem
  • AskGeo有自己的库用于从 Java 或 .Net 调用
  • GeoNames拥有几乎所有东西的客户端库

  • 自托管 Web 服务
  • geo2tz - 基于 Timezone lookup ,可通过 Docker 镜像获得

  • 其他想法
  • 查找最近的城市 with an R-Tree
  • 查找最近的城市 with MySQL

  • 如果您知道任何其他人,请更新此列表
    另请注意,最近城市方法可能不会产生“正确”的结果,只是一个近似值。
    转换为 Windows 区域
    列出的大多数方法将返回 IANA 时区 ID。如果您需要转换为 Windows 时区以与 TimeZoneInfo 一起使用.NET 中的类,使用 TimeZoneConverter图书馆。
    不要使用 zone.tab
    tz database包含一个名为 zone.tab 的文件.此文件主要用于显示供用户选择的时区列表。它包括每个时区引用点的纬度和经度坐标。这允许创建突出显示这些点的 map 。例如,查看 the moment-timezone home page 上显示的交互式 map .
    虽然使用此数据从纬度和经度坐标解析时区可能很诱人,但请考虑这些是点 - 而不是边界。最好的办法是确定最近的点,这在许多情况下不是正确的点。
    考虑以下示例:
    Time Zone Example Art
    两个方块代表不同的时区,其中每个方块中的黑点是引用位置,比如可以在 zone.tab 中找到。蓝点表示我们试图为其查找时区的位置。很明显,这个位置在左边的橙色区域内,但如果我们只看离引用点最近的距离,它会解析到右边的绿色区域。

    关于geolocation - 如何使用纬度和经度坐标从某个位置获取时区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16086962/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com