import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class GoogleTest {
/**
* 解析地址和反解析纠经度
* @param addressOrPoint : 中英文地址,或者是 纬经度,不是经纬度
* @param outPutType :这三个数据类型 : xml、json、csv 注:输出格式建议用JSON或CSV,XML格式有时候不能正常显示,比如 中国:35.8616600,104.1953970
* @param googleKey : 如果项目发布在网络上,可能要从GOOGLE申请一个GOOGLE MAP KEY才能正常使用
* 参考:http://code.google.com/intl/zh-CN/apis/maps/documentation/services.html#Geocoding_Object
*/
private static void parseAddressAndPoint(String addressOrPoint, String outPutType, String googleKey){
try {
// http://ditu.google.cn 而不用 http;//map.google.com 原因是不能正常解析中文
String url = "http://ditu.google.cn/maps/geo?output="+outPutType+"&q="+java.net.URLEncoder.encode(addressOrPoint,"UTF-8")+"&sensor=false&key="+googleKey;
URL myUrl = new URL(url);
URLConnection httpConn = myUrl.openConnection();
InputStreamReader isr = new InputStreamReader(httpConn.getInputStream(),"UTF-8");//读取数据,并设置数据编码
int responseInt = isr.read();
while(responseInt != -1){
System.out.print((char)responseInt);
responseInt = isr.read();
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// GoogleTest.parseAddressAndPoint("福山路380号", "json", "abcdefg");
// GoogleTest.parseAddressAndPoint("福山路380号", "xml", "abcdefg");
// GoogleTest.parseAddressAndPoint("福山路380号", "csv", "abcdefg");
GoogleTest.parseAddressAndPoint("31.2255527,121.5303352", "csv", "abcdefg"); //纬度,经度 而不是 经度,纬度
}
}
分享到:
相关推荐
使用google地图的反向地址解析功能,提供一个经纬度得到对应地址,或者给出模糊地址,得到经纬度,放在java后台代码中处理,这个使用的是Google的地理编码服务。一般而言数据量不大的情况使用是不限制的。按照Google...
在Google Map 3.0版本中,反向解析地址(Geocoding)是一项重要的功能,它允许用户通过输入一个具体的地址来获取对应的经纬度坐标。这种技术在众多应用中都有所应用,比如导航系统、位置服务、数据分析等。 反向...
googlemap 反向地址解析示例,即由坐标解析出街道门牌号地址。
XML因其结构化和易于解析的特性,在数据交换和配置文件中广泛使用,而Map则作为Java中存储键值对的高效数据结构。在实际开发中,我们可能需要在XML和Map之间进行转换,以便于数据处理。本文将详细讲解如何使用Java...
在IT行业中,尤其是在Web开发领域,常常需要利用地图服务来获取和展示地理位置信息。Google Maps API 是一个广泛使用的工具,它允许开发者通过JavaScript或者其他的编程语言与Google Maps进行交互,实现各种功能,如...
在Java中,我们可以创建一个工具类来实现XML到Map的转换以及Map到XML的转换。 首先,我们需要在项目中引入DOM4J库。如果你使用Maven,可以在`pom.xml`文件中添加以下依赖: ```xml <groupId>dom4j ...
本文将深入探讨如何在Java中解析YAML文件,包括依赖管理、封装解析类以及源码分析。 首先,为了在Java项目中使用YAML解析功能,我们需要引入相关的库。在Maven项目中,可以在`pom.xml`文件中添加SnakeYAML的依赖: ...
在Java中,有多个库可以用来解析JSON,其中最常用的两个是Jackson和Gson。下面我们将分别介绍这两个库的使用方法。 1. **Jackson库** Jackson是Java社区广泛使用的JSON处理库,提供了高效的序列化和反序列化功能。...
总结,Java中遍历`Map`主要有四种方式,其中通过`Map.entrySet()`进行遍历通常被认为效率较高,尤其在`Map`容量较大的情况下。而在Java 8之后,我们可以利用Lambda表达式简化遍历操作。获取`Map`的长度直接调用`size...
在Java中,我们通常使用`List`接口来存储一组有序的对象。当JSON数据以数组的形式存在时,我们可以使用Gson将其解析为`List`对象。以下是一个示例: ```java public class City { int id; String name; String ...
在Java开发中,XML(eXtensible Markup Language)是一种常用的数据交换格式,特别是在与Web服务交互时。当从Web服务接收到XML响应时,通常需要将其解析为更便于操作的数据结构,如Map。Map是一种键值对集合,能够...
在Java中,我们可以通过解析torrent文件来获取这些信息,以便进行文件下载或跟踪网络状态。 首先,我们需要了解torrent文件的结构。torrent文件是用Bencoding编码的,这是一种简单的键值对编码方式,类似于JSON。...
这就是如何在Java中读取JSON文件并将其转化为Map进行取值的基本步骤。在实际开发中,你可能需要处理更复杂的JSON结构,包括嵌套的对象和数组,以及各种类型的值。Jackson库提供了丰富的API来应对这些情况,如`@...
在Java 8中,将List转换为Map对象是一种非常实用的技术,特别是在处理大规模数据时非常有用。本文将详细介绍在Java 8中将List转换为Map对象的方法,并提供了多种实现方式。 首先,我们需要明确Map的key是什么?在这...
接着,我们可以编写一个Java类来读取和解析`shp`文件。以下是一个简单的示例代码,展示了如何使用`geotools`打开`shp`文件,并提取边界线数据、中心点坐标和经纬度范围: ```java import org.geotools.data....
xml解析为map,代码已经测试,可直接使用。
通过引用【opevcsv】依赖,逐行读取数据 并转为Map,Object>格式,后续可以通过BeanUtil.MaptoBean()方法将map转为你需要的bean对象; csv文件必须带表头,bean对象命名符合驼峰格式; 通过此方法可以快速的将文件...
在Java中,解析JSON通常涉及到将JSON字符串转换成Java对象,以便于程序能够更方便地操作这些数据。 ### JSON库的使用 文档提到使用`json-lib.jar`开发包来解析JSON。`json-lib`是一个开源的Java库,用于处理JSON...