//请求数据接口中用到的转码问题
String encodeStr = URLEncoder.encode("中国", "utf-8");
AsyncTask解析数据(HttpURLconnection)
public class HttpUtils extends AsyncTask<String, Integer, String> {
@Override
protected String doInBackground(String... params) {
String str="";
try {
URL url=new URL(params[0]);
HttpURLConnection connection=(HttpURLConnection) url.openConnection();
connection.setConnectTimeout(5000);
connection.setRequestMethod("GET");
connection.connect();
BufferedReader br=new BufferedReader(new InputStreamReader(connection.getInputStream()));
String st="";
while((st=br.readLine())!=null){
str+=st;
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return str;
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
}
}
HttpClient请求数据
protected void getHttpClientGet(String url) {
String content = "";
try {
//获取HttpClient对象
HttpClient client = new DefaultHttpClient();
//构建一个请求对象
HttpGet get = new HttpGet(url);
//往服务器发送请求
HttpResponse response = client.execute(get);
//获取状态码
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode == 200){
//获取响应回来的实体内容
HttpEntity entity = response.getEntity();
content = EntityUtils.toString(entity, "utf-8");
}
Log.i("data", content);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}