import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.Charset;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
public class aaa {
public static JSONObject readJsonFromUrl(String url) throws IOException, JSONException {
InputStream is = new URL(url).openStream();
try {
BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
StringBuilder sb = new StringBuilder();
int cp;
while ((cp = rd.read()) != -1) {
sb.append((char) cp);
}
JSONObject json = JSONObject.parseObject(sb.toString());
return json;
} finally {
is.close();//关闭流
}
}
public static void main(String[] args) throws IOException, JSONException {
String name = "广州塔";
//URLEncoder.encode(name, "UTF-8"); 编码字符集
String dest_url = "http://api.map.baidu.com/place/v2/suggestion?query="+URLEncoder.encode(name, "UTF-8")+"®ion=广东省&output=json&ak=XdlkfbTXPDT2kzZluIFMwUUDGbEfXc5P";
JSONObject json = readJsonFromUrl(dest_url);
System.out.println(json.toString());
}
}
本文介绍了一个Java程序,该程序能够从指定的URL中读取JSON格式的数据,并将其解析为JSON对象。示例展示了如何使用阿里巴巴的FastJSON库来完成这一任务。此外,还提供了一个具体的例子,即从百度地图API获取关于广州塔的位置建议。
1039

被折叠的 条评论
为什么被折叠?



