Answers:
我认为这个问题不是明确的地理范围,因为您只对名称感兴趣,因此您可能想在Stack Overflow上提问。您可以通过以下两条信息来回答您的问题:州和更正的县名。要执行校正,您可能希望使用Levenshtein距离(示例和java实现)将模糊数据与校正后的值进行匹配。
地理编码服务需要地理几何数据,关联的地名词典(以处理命名和名称替代)和用户界面(以中介搜索)。对于反向地址解析器,您需要添加拓扑验证器。对于Java,开源的JTS拓扑套件将是自然的选择:http : //www.vividsolutions.com/jts/jtshome.htm
可以在人口普查中找到美国的县几何图形:http : //www.census.gov/geo/www/cob/co2000.html
首先,美国地名委员会拥有一个数据库:http : //geonames.usgs.gov/
创建一个可靠的地名词典数据库和编织算法以容忍近似搜索匹配是困难的部分。
对于Java Geocoder,请尝试 http://jgeocoder.sourceforge.net/
有点过时(2008),但仍可能有用,请访问Wiki http://docs.codehaus.org/display/JGEOCODER/JGeocoder+-+Free+Java+Geocoder
如果您可以遵循Google 的服务条款,则Google提供了一个不错的地理编码API。基本的演示可以在这里找到。
使用其服务受到一些限制,但结果是大多数用户直观,快速,准确且熟悉。它将使您可以专注于开发服务的家谱部分。