HttpClient 处理中文乱码
来源:互联网 发布:java取字符串前10位 编辑:程序博客网 时间:2024/04/30 01:25
HttpClient 请求的中文乱码问题
相关类库:
commons-codec-1.3.jar,commons-httpclient-3.1.jar,commons-logging-1.1.1.jar
--给请求传递参数
HttpClient client = new HttpClient();
HttpMethod method= new PostMethod(url);
HttpMethodParams params = new HttpMethodParams();
params.setContentCharset("GB2312");
method.setParams(params);
方式一:
最简单的方式,直接输出页面,这里基本上不需要任何设置。
System.out.println(getMethod.getResponseBodyAsString());
方式二:
使用流方式读取
InputStream in = getMethod.getResponseBodyAsStream();
//这里的编码规则要与上面的相对应
BufferedReader br = new BufferedReader(new InputStreamReader(in,"GB2312"));
String tempbf;
StringBuffer html = new StringBuffer(100);
while ((tempbf = br.readLine()) != null) {
html.append(tempbf +"\n");
}
System.out.println(html.toString());
方式三:
当然还可以使用这样的方式,因为默认是使用ISO-8859-1,无非就是多进行了几次转码
InputStream in = getMethod.getResponseBodyAsStream();
//这里使用8859-1读取
BufferedReader br = new BufferedReader(new InputStreamReader(in,"ISO-8859-1"));
String tempbf;
StringBuffer html = new StringBuffer(100);
while ((tempbf = br.readLine()) != null) {
html.append(tempbf +"\n");
}
//将8859-1再次转成GB2312
System.out.println(new String(html.toString().getBytes("ISO-8859-1"),"GB2312"));
我还是建议使用第一种方法,但我认为本质上是一致的
对于请求部分还可以通过如下几种方式进行设置
getMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"GB2312");
getMethod.addRequestHeader("Content-Type", "text/html; charset=gb2312");
- HttpClient 处理中文乱码
- HttpClient 处理中文乱码
- HttpClient 处理中文乱码
- HTTPClient PostMethod 中文乱码处理
- httpclient上传图片与参数,处理中文乱码
- httpclient 中文乱码
- httpclient中文乱码解决
- httpclient中文乱码问题
- httpclient中文乱码问题
- httpclient中文乱码问题
- HttpClient中文乱码
- httpclient 中文响应乱码
- httpclient解决中文乱码问题
- HttpClient中文乱码的解决方案
- HttpClient请求中文乱码详解
- HttpClient PostMethod 中文乱码问题解决
- HTTPCLIENT MultipartEntity 上传中文乱码
- HttpClient POST 中文乱码问题
- 数据挖掘常用算法
- “格式说明”符号
- 互联网+传统行业融合发展之道(读书笔记)
- iOS QuartzCore - Core Animation
- CSS3 新属性
- HttpClient 处理中文乱码
- BP神经网络(python代码)
- 一天一点xib:5当xib遇到auto layout
- iOS 数据存储 - Plist
- 【微服务干货系列】使用微服务架构之前,你必须知道的
- iOS 数据存储 - NSUserDefaults
- Android滑动菜单特效实现,仿人人客户端侧滑效果,史上最简单的侧滑实现
- 代码集合
- Activity详解 (三) : Activity启动模式