我需要一个网页、软件或任何其他方法,以便我可以提供一个(约 10000 个)位置点列表(以 D°M'S”(纬度和经度)表示),并获取十进制度的等效值(例如,纬度 132.123456,经度 99.12345)。
我见过的所有网页和方法都需要逐个插入数据。而 MSDN 提供的方法(http://support.microsoft.com/kb/213449) 给出了完全错误的结果。
输入所需的格式并不重要,因为我可以轻松修改数据以符合该格式。
答案1
如果您使用的是 Windows 计算机,那么您可能已经拥有(或可以轻松获取)Windows Powershell。给定一个名为 Info.csv 的 CSV 文件,其内容如下:
Lat, Long
56 35 42, 73 55 21
12 55 12, 155 23 42
只要我从 wiki 上获得公式,就会产生转换:
Import-csv C:\Path\To\Info.csv | Select @{n='Lat'; e={[int[]]$p = $_.Lat.Split(' '); $res = $p[0] + ($p[1]/60) + ($p[2]/3600); return "{0:N6}" -f $res}}, @{n='Long'; e={[int[]]$p = $_.Long.Split(' '); $res = $p[0] + ($p[1]/60) + ($p[2]/3600); return "{0:N6}" -f $res}}
其结果如下:
Lat Long
--- ----
56.595000 73.922500
12.920000 155.395000
不过老实说,您应该将其写成脚本并做所有您应该始终做的好事,例如数据验证。
答案2
答案3
答案4
Mapsdata 在线转换器可能适合您: http://www.mapsdata.co.uk/online-file-converter/
我们的免费在线转换器可让您批量对邮政编码和英国邮政编码进行地理编码,将 GPX 转换为 KML,将 SHP 转换为 KML,将 KMZ 转换为 KML,将 UTM 转换为纬度经度,等等……我们为自己的产品开发了这些转换器背后的技术,并决定与他人共享,供其他人免费使用。目前,除了我们的服务器可以容纳多少条目外,您可以转换的条目数量没有限制,所以尽情享受吧!如果我们有所帮助,请在 Twitter 上告诉我们:@Mapsdata 或通过电子邮件。
不幸的是,它们似乎不能反过来,从十进制度到度分秒