首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >国家/地区代码(iso-3166-1/iso-3166-2)至经度和纬度

国家/地区代码(iso-3166-1/iso-3166-2)至经度和纬度
EN

Stack Overflow用户
提问于 2015-03-01 13:48:09
回答 2查看 5.2K关注 0票数 1

我需要将iso-3166-1/iso-3166-2代码转换为经度/纬度。

示例:

  • 输入:"US",输出:(37.09024,-95.71289100000001)。
  • 输入"VE-O",输出:(10.9970723,-63.91132959999999)。

我一直在搜索,但没有找到完整的清单,或者,理想的情况下,Java库可以这样做。

这个Github项目是很有希望的,但是很多地区缺少很多地理位置信息。

请注意,与需要一份世界上所有国家的名单,并且要有经纬度坐标。问题不同,这个问题指的是区域分区(iso-3166-2).

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-02 12:01:17

因为我没有得到任何答案,我会解释我是如何解决的。

我找到了iso-3166-1国家代码质心:拉特隆/的csv清单(我不得不做一些手动调整)

至于iso-3166-2区域质心,我最终创建了一个shell脚本,它使用Google以csv格式打印区域质心(请注意,我没有验证完整的输出,但我选中的情况是正确的)。下面是使用卷曲jq处理API输出的脚本的简化版本:

代码语言:javascript
复制
#!/bin/bash

# Example list of regions (full list can be obtained from https://www.ip2location.com/free/iso3166-2 )
REGIONS="VE-O GB-BKM GB-CAM GB-CMA"

for REGION in $REGIONS; do 
LATLON=$(curl -s "maps.googleapis.com/maps/api/geocode/json?sensor=false&address=$REGION" | jq -r '.results[0].geometry.location.lat,@text ",",.results[0].geometry.location.lng')
echo $REGION , $LATLON |  tr -d ' '
done

然后,我使用Apache Commons CSV在java代码中导入csv清单。

票数 3
EN

Stack Overflow用户

发布于 2016-07-19 21:14:53

这是我在解决这个问题时发现的最好的资源:

国家坐标:拉特隆/

ISO 3166-2坐标:2.js

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

https://stackoverflow.com/questions/28794252

复制
相关文章

相似问题

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