您的位置:首页 > 理论基础 > 计算机网络

关于volley网络请求框架乱码问题

2014-11-27 13:55 337 查看
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(mUrl, null,

new Response.Listener<JSONObject>() {

@Override

public void onResponse(final JSONObject response) {

// 成功获取数据后将数据显示在屏幕上

try {

info = response.toString();

// info = response.getString("UTF-8");

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

Log.d("TAG", info);

runOnUiThread(new Runnable() {

@Override

public void run() {

if (null != info)

mTv_weather_info.setText(info);

}

});

}

}, new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

Log.d("TAG", error.getMessage(), error);

}

}) {

@Override

protected Response<JSONObject> parseNetworkResponse(

NetworkResponse response) {

try {

JSONObject jsonObject = new JSONObject(

new String(response.data, "UTF-8"));

return Response.success(jsonObject, HttpHeaderParser.parseCacheHeaders(response));

} catch (UnsupportedEncodingException e) {

return Response.error(new ParseError(e));

} catch (Exception je) {

return Response.error(new ParseError(je));

}

}

};

可以看到通过重写parseNetworkRespones方法,得到了最原始的byte[]数据,进而设置编码格式,在获取方法中成功获取中文内容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: