您的位置:首页 > 编程语言 > Java开发

通过java方法实现将地址转换成百度地图坐标

2015-01-30 13:44 567 查看
1.百度地图Web服务API为开发者提供http接口,即开发者通过http形式发起地址请求,获取返回json或xml格式的检索数据。用户可以基于此开发Java等语言的地图应用。

1.通过getPoint(paramers)方法传人Stores参数(Stores中有地址成员变量)返回一个带有地址的Stores参数对象

public static Stores getPoint(Stores stores){
try {
String sCurrentLine;
String sTotalString;
sCurrentLine = "";
sTotalString = "";
java.io.InputStream l_urlStream;

java.net.URL l_url = new java.net.URL("http://api.map.baidu.com/geocoder/v2/?address="+stores.getAddress().replaceAll(" ", "")+"&output=json&ak=702632E1add3d4953d0f105f27c294b9&callback=showLocation");
java.net.HttpURLConnection l_connection = (java.net.HttpURLConnection) l_url.openConnection();
l_connection.connect();
l_urlStream = l_connection.getInputStream();
java.io.BufferedReader l_reader = new java.io.BufferedReader(new java.io.InputStreamReader(l_urlStream));
String str=l_reader.readLine();
//用经度分割返回的网页代码
String s=","+"\""+"lat"+"\""+":";
String strs[]=str.split(s, 2);
String s1="\""+"lng"+"\""+":";
String a[]=strs[0].split(s1, 2);
System.out.println(a[1]);
stores.setLng(Float.parseFloat(a[1]));
s1="}"+","+"\"";
String a1[]=strs[1].split(s1, 2);
System.out.println(a1[0]);
stores.setLat(Float.parseFloat(a1[0]));
return stores;
//shop.setLat(a1[0]);
} catch (Exception e) {
e.printStackTrace();
}
return stores;
}2.一下代码是读取EXICE表格的方法 调用getListStores()方法返回一个List<Stores> 集合
public static List<Stores> getListStores(){
List<Stores> storess = new ArrayList<Stores>();
jxl.Workbook readwb = null;
try
{
//构建Workbook对象, 只读Workbook对象

//直接从本地文件创建Workbook
InputStream instream = new FileInputStream("E:/stroe.xls");
readwb = Workbook.getWorkbook(instream);
//Sheet的下标是从0开始
//获取第一张Sheet表

Sheet readsheet = readwb.getSheet(0);

//获取Sheet表中所包含的总列数

int rsColumns = readsheet.getColumns();

//获取Sheet表中所包含的总行数

int rsRows = readsheet.getRows();

//获取指定单元格的对象引用

for (int i = 1; i < rsRows; i++)
{
System.out.print(i+"------");
Stores stroes = new Stores();
stroes.setPublic_id(1613);
stroes.setShop_password("admin1");
//1613
stroes.setImg("");
stroes.setShow_order(1);
for (int j = 0; j < rsColumns; j++)
{
Cell cell = readsheet.getCell(j, i);
String str =cell.getContents();
switch(j){
case 0:
stroes.setName(str);
break;
case 1:
stroes.setPhone(str);
break;
case 2:
stroes.setProvince("广西自治区");
break;
case 3:
stroes.setCity(str);
break;
case 4:
stroes.setAddress(str);
break;
case 5:
break;
case 6:
break;
case 7:
stroes.setShop_login_name("admin"+i);
break;
case 8:
stroes.setShop_password("admin1");
break;
}

}
storess.add(stroes);
}

} catch (Exception e) {

e.printStackTrace();

} finally {

readwb.close();

}
return storess;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息