2009-05-18 99 views
6

一定的相关性this question,但在没有关于QuickBooks的任何回答具体的,没有人知道为Java地址解析器的?一些可以采取非结构化地址信息并解析出地址线1,2和城市国家邮政编码和国家的东西?Java的邮寄地址解析器

回答

8

我知道,谷歌地图的Web服务是伟大在这样做。所以,如果你想使用它,你可以节省很多努力。

这里真正的问题是,你需要的城市/国家/省名的全球数据库,以有效地解析非结构化地址。

这是我如何建立一个URL由谷歌地图API在C#中使用:

string url = "http://maps.google.com/maps/geo?key=" + HttpUtility.UrlEncode(this.apiKey) + "&sensor=false&output=xml&oe=utf8&q=" + HttpUtility.UrlEncode(location); 
+9

小心这个。 Google TOS禁止自动查询。 – 2010-09-17 17:05:08

4

可能需要阅读这个堆栈溢出问题: “Parse usable Street Address, City, State, Zip from a string”。没有真正的Java代码来完成这项工作(只是一些VB),但有一些关于这个问题的讨论,以及关于替代John Gietzen提到的更多信息,它们使用Web服务来为您解释它。

1

请参阅www.address-parser.com,它们提供用于解析国际地址的Web服务。

+0

很好找,谢谢!我希望他们提供了一个Java API(由于实际的原因,在这种情况下Web服务将不能很好地工作)。 – Yishai 2010-02-07 21:09:15

+1

对于商业产品,请看http://www.melissadata.com。他们提供了我没有测试过的Java API。它是基于C的产品的JNI封装。 – Dave 2010-04-06 14:40:16

2

Mural项目有一个地址解析器:https://mural.dev.java.net/。我还没有想出如何从较大的Mural引擎中提取它,但它的工作基于一些非常有限的测试。