将度、分、秒转换为十进制度的网页/方法

将度、分、秒转换为十进制度的网页/方法

我需要一个网页、软件或任何其他方法,以便我可以提供一个(约 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

这听起来就像是矩阵是为了而创建的。

还有一种开源的 matlab 替代品叫做自由格式你可以尝试一下。此处列出了其他替代方案

编辑:这里有一些有关 matlab 的额外帮助:

答案3

您可以使用开源软件吗:项目4

如果你滚动到该页面的底部,进入该部分其他投影库/软件你可能会感兴趣:

文档和其他信息:

Proj4 可以从标准输入或重定向读取输入,因此可以进行批处理。

答案4

Mapsdata 在线转换器可能适合您: http://www.mapsdata.co.uk/online-file-converter/

我们的免费在线转换器可让您批量对邮政编码和英国邮政编码进行地理编码,将 GPX 转换为 KML,将 SHP 转换为 KML,将 KMZ 转换为 KML,将 UTM 转换为纬度经度,等等……我们为自己的产品开发了这些转换器背后的技术,并决定与他人共享,供其他人免费使用。目前,除了我们的服务器可以容纳多少条目外,您可以转换的条目数量没有限制,所以尽情享受吧!如果我们有所帮助,请在 Twitter 上告诉我们:@Mapsdata 或通过电子邮件。

不幸的是,它们似乎不能反过来,从十进制度到度分秒

相关内容