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");
分享到:
相关推荐
下载这个工具类,然后直接调用createHtmlPage方法就可以了。最关键一点是,网上的方法没有一个解决了乱码问题,费了我不少功夫。
服务器端自己写,本示例为客户端代码,可以解决httpClient4乱码问题,是替代修改源码的最佳写法。
解决HttpClient中文乱码问题jar文件
很全面的代码介绍,很完整的乱码解决说明,让你一目了然,值得研究
HttpClient4.2.5实现文件上传,无中文文件名乱码问题。亲测无问题。有问题可吐槽!
httpclient中文版本,HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。本文首先介绍 ...
httpclient-4.5.3 api 中文版
httpclient4.5的中文帮助文档,可以帮助学习httpclient,利用httpclient采集网络数据,解决采集时遇到的问题
网上找的,共同分享! HttpClient4.0.3 Tutorial中文翻译!
httpclient4中文教程 httpclient4
包含翻译后的API文档:httpclient-4.5.5-javadoc-API文档-中文(简体)版.zip 对应Maven信息:groupId:org.apache.httpcomponents,artifactId:httpclient,version:4.5.5 使用方法:解压翻译后的API文档,用...
标签:apache、httpcomponents、httpclient、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...
《 httpclient-4.5.3中文版》 文档 ,重要的事说三遍:很实用,很实用,很实用!
HttpClient中文文档,快速开发
httpclient3 httpclient4 上传文件 乱码问题
标签:apache、httpcomponents、httpclient、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...
httpclient官网教程中文版,这是根据官方文档翻译的doc文件,带有目录
HttpClient4.0.1版本 官方 中文教程。
HTTPclient 4.3版本的Apache官网英文版的翻译版本
标签:apache、httpcomponents、httpclient、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...