地址解析工具
来源:互联网 发布:淘宝冒用厂名厂址 编辑:程序博客网 时间:2024/06/16 23:16
最近由于需要,完成了一个地址批量解析的工具,有一些收获,在这做一些记录
地址解析分为地址正向解析(从地址得到对应的经纬度)和反向解析(通过经纬度得到对应位置),反响解析还好说,毕竟通过经纬度在地图上进行标注,只要和地图相关的软件都支持,如fusionMap和ammapMap。
地址正向解析,简称地址解析,我使用的是google提供的api。 具体内容可参考官网。其中有 Api2和Api1,对于免费用户我感觉区别不大。
我写了两个程序,一个是服务器端,一个是客户端。当时写flex客户端是为了进行测试。服务器端才是为了批量解析,但是在批量解析过程中,碰到一个问题: 解析地址过多会出现错误,刚开始我加入了间隔2秒,没有效果,当时猜测:难道自己解析太频繁,google把我给封了,后来在不同的时间段运行效果并未好转,后来从新将间隔改为2min才搞定,切记切记。而且有些不能批量解析的,在客户端手动却能实现解析,很奇怪。
客户端代码:
var geocoder:ClientGeocoder = new ClientGeocoder();
geocoder.geocode(address.text);
geocoder.addEventListener(
GeocodingEvent.GEOCODING_SUCCESS,
function(event:GeocodingEvent):void {
var placemarks:Array = event.response.placemarks;
for(var i:int=0;ivar placemark:Placemark=placemarks[0];
result.text=event.target+": "+placemark.address+","+placemark.point;trace(event.target+": "+placemark.address+","+placemark.point);}});geocoder.addEventListener(GeocodingEvent.GEOCODING_FAILURE,function(event:GeocodingEvent):void {trace(event.target+"Geocoding failed");result.text=event.toString();
});loader.addEventListener(Event.COMPLETE,function(event:Event) {var loader:URLLoader=URLLoader(event.target);var datas:XML=XML(loader.data) ;
for each (var data:XML in datas.province) {geocoder.geocode(data.@NAME);}});
说明: 通过text组件输入地址,在EventComplete事件中实现监听,完成地址的解析。
服务器端代码:
private String geoCodeByGoogle(String address) throws IOException, ClientProtocolException {String result="解析失败";String key="ABQIAAAA0AL-b41DvVq2yvYvsRu7iBTwM0brOpm-All5BF6PoaKBxRWWERQkkZEcWl9sx6981Q5nE3NYh4sd7w";StringBuilder urlStr=new StringBuilder("http://maps.google.com/maps/geo");urlStr.append("?q="+address);urlStr.append("&sensor=false&output=csv");urlStr.append("&key="+key);HttpClient client=new DefaultHttpClient();if(logger.isDebugEnabled()) {logger.debug("url字符串"+urlStr.toString());}//System.out.println("url字符串"+urlStr.toString());HttpGet get=new HttpGet(urlStr.toString());HttpResponse response=client.execute(get);HttpEntity entity=response.getEntity();if(entity != null) {result=EntityUtils.toString(entity);entity.consumeContent();}if(logger.isDebugEnabled()) {logger.debug("google传回结果"+result);}return result;}
- 地址解析工具
- 自动解析IP地址工具
- 视频真实地址解析工具
- Ip地址解析工具类
- AAuto 115网盘真实地址解析工具
- 工具地址
- 工具地址
- 工具地址
- IP地址格式解析工具,支持以下格式的IP地址
- 地址解析与逆解析
- 【Dreamweaver工具下载地址】
- ORACLE 工具下载地址
- Php工具和地址
- 一些工具下载地址
- ELDK工具链地址
- 开发工具下载地址
- 网页地址分享工具
- IP 地址扫描工具
- jQuery必知必熟基础知识
- 迷失期。。。
- 喝酒时别吃胡萝卜:胡萝卜素与酒精会伤肝
- Android屏幕截图之View方法
- 使用动态链接库的优点
- 地址解析工具
- dns8.8.8.8
- windows7 下安装sqlserver2005Express版本出现29506错误
- silverlight+wcf+linq to sql项目实战
- 赚积分不容易
- SQL Server 数据类型详解
- 续:EMS的进度。
- 推荐信
- sql日期时间相减语句