您的位置:首页 > 其它

解决Volley请求框架中文乱码问题

2016-08-28 10:03 92 查看

问题产生原因

1.服务端没有设置编码格式

2.Volley对于没有指定编码格式的请求默认将其转化为”ISO-8859-1”

解决办法

将返回的格式转化为UTF-8即可

String newResponse =new String(response.getBytes("ISO-8859-1"),"UTF-8"); `


示例代码如下

RequestQueue queue = Volley.newRequestQueue(this);
StringRequest string = new StringRequest(Request.Method.GET, "http://www.baidu.com", new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
//将数据转码为UTF-8//解决中文乱码问题
String newResponse = new String(response.getBytes("ISO-8859-1"),"UTF-8");
Log.e("response", newResponse);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("error",error.toString());
}
});
queue.add(string);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编码 乱码 volley