java根据地址获取经纬度
时间: 2023-12-03 10:05:21 浏览: 71
获取经纬度、根据地址获取经纬度
可以使用百度地图API或者高德地图API来根据地址获取经纬度。
以百度地图API为例,可以通过以下步骤获取:
1. 申请开发者账号并创建应用,获取AK(Access Key)。
2. 构造请求URL,包含以下参数:
- ak:开发者的AK。
- address:需要查询经纬度的地址。
- output:输出格式,可以选择json或者xml。
3. 发送HTTP请求,获取返回结果。
Java代码示例:
```java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class GeoCoder {
public static void main(String[] args) {
try {
String address = "北京市海淀区中关村大街27号";
String ak = "your_ak_here";
address = URLEncoder.encode(address, "UTF-8");
String url = String.format("http://api.map.baidu.com/geocoding/v3/?address=%s&output=json&ak=%s", address, ak);
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
} catch (Exception e) {
System.out.println(e);
}
}
}
```
注意替换代码中的AK参数为你自己的AK。
阅读全文