2014-10-30 87 views
0

我有邮件地址,需要通过Java程序将它们转换为坐标(纬度,经度)。麻烦的是,程序不允许通过互联网进行通信(可能是由于隐私问题)。我搜索了,我发现的都是拨打Google地图或其他服务的程序,因此他们都使用互联网。任何人都知道无论如何通过一些没有互联网的代码来实现这一点?任何可能使用某些库或框架的Java代码?Java - 获取邮件地址的位置(经度,纬度,经度),不通过互联网进行通信

如果Java中没有任何东西可用,那么我可以对其他语言开放。我现在正在阅读有关postgis的内容(由一位同事建议)。不知道它是否工作,但如果你知道这个,请给一些建议/代码等

注意基于commnent:如果DBMS知道如何将地址转换为坐标,我可以在本地安装DBMS。不知道是否POSTGIS能做到这一点

感谢

+0

你的意思是,你如何获得一个数据库,你可以把它放在硬盘上? – ajb 2014-10-30 20:04:08

+0

是啊,如果数据库本身知道如何将地址转换为地理坐标。 – Simo 2014-10-30 20:10:55

+0

,我认为可能需要一个数据库,因为它似乎没有单一的算法或库可以实现这一点。 – Simo 2014-10-30 20:26:08

回答

0

邮寄地址(门牌号,街道,镇)的数据库,坐标,可以为商业许多国家获得的,但往往是昂贵的。 ZIP邮政编码数据库更容易获得,并且可以相对便宜或免费。大多数数据库可以按距离处理搜索,包括PostGis。

+0

如果PostGis可以接收地址并将其转换为坐标,请您澄清一下吗?可能的话,如果你知道的话,怎么样?谢谢 – Simo 2014-10-30 21:13:02

+0

没有PostGis或任何其他数据库可以将地址转换为坐标。数据库只能存储坐标并操作数据。也就是说,您可以计算邮政编码中有多少“东西”,与某个坐标最近的“东西”等。您必须创建自己的数据库或从第三方获取一个。 – 2014-10-31 00:42:32