一、设置请求的编码

第一种方法:

在Hedaer中设置Content-Type

HttpGet httpGet = new HttpGet(url);
httpGet.addHeader("Content-Type", "text/html;charset=UTF-8");

第二种方法:

设置HttpClient的CONTENT_CHARSET

HttpClient httpClient = new DefaultHttpClient();
httpClient.getParams().setParameter(CoreProtocolPNames.HTTP_CONTENT_CHARSET, "UTF-8");

第三种方法:

设置get/post method的CONTENT_CHARSET

HttpGet httpGet = new HttpGet(url);
httpGet.getParams().setParameter(CoreProtocolPNames.HTTP_CONTENT_CHARSET, "UTF-8");

这三种设置方法的优先级依次递增,也就是说如果同时设置,则以后面的为准。如果都没有设置,默认charset是ISO-8859-1。

二、获取response的编码:

HttpResponse response = httpClient.execute(httpGet);
System.out.println(response.getParams().getParameter(CoreProtocolPNames.HTTP_CONTENT_CHARSET));

三、获取response内容:

HttpEntity httpEntity =response.getEntity();
BufferedReader br = new BufferedReader(new InputStreamReader(httpEntity.getContent(), "UTF-8"));
String line;
while((line = br.readLine()) != null){System.out.println(line);
  System.out.println("\n");
}


也可在获得response后转码:
HttpEntity httpEntity =response.getEntity();
BufferedReader br = new BufferedReader(new InputStreamReader(httpEntity.getContent()));
String line;
while((line = br.readLine()) != null){System.out.println(new String(line.getBytes("ISO-8859-1"),"UTF-8"));System.out.println("\n");
}   



参考:httpclient4 中文版帮助文档,最新官方版翻译版(第一章 下)
httpclient编码
HttpClient字符编码

HttpClient4.x编码相关推荐

  1. Java使用HTTPClient4.3开发的公众平台消息模板的推送功能

    代码引用,参考文章:http://www.cnblogs.com/feiyun126/p/4778556.html,表示感谢! 1 package com.yuanchuangyun.cyb.mana ...

  2. HttpClient数据传输的编码方式

    约定  1. HttpClient版本:HttpClient4.1  2. 服务端中间件:tomcat7  HttpGet请求的URI编码设置  1. 问题及原因  使用HttpClient的Http ...

  3. HttpClient4.x中GET方式发送请求参数中文乱码处理

    HttpClient4.x GET 方式发送请求参数中文乱码处理 (非返回结果乱码) 之前尝试对HttpGet对象添加头部字符编码设置均无效,后改用参数字符编码处理后实现请求参数乱码正确处理. Htt ...

  4. 创建数据库,指定数据库的字符集和编码顺序

    创建数据库,指定它的字符集和编码顺序 create database {数据库名称} CHARACTER SET {字符集} COLLATE {排序规则} 举例: create database co ...

  5. Myeclipse中修改项目默认编码还是乱码?一步永久解决!

    在myeclipse中修改默认编码后发现项目还是乱码? 点击Windows选择Preferences 如下图

  6. form表单提交编码的问题

    浏览器在form提交后,会生成一个HTTP的头部信息"content-type",标准规定其形式为Content-type: application/x-www-form-urle ...

  7. vs2012下编码引起的一个神坑

    当前有一个项目里面会报解决该文件不能在当前代码页(936)中表示的字符的warning, 根据这个方法 我修改了编码,发现确实不再报warning了 但是尼玛却报出了error 真是太奇怪了!!

  8. 【JavaScript总结】JavaScript语法基础:JS编码

    运算符 数学:+. -. *. / 逻辑:>. < .>= .<=. == . !=.&&.|| . === .!==(完全等于) 对象相关 new delet ...

  9. shell 批量转换文件编码

    相信大家在平时的跨平台编程中碰到过文件编码问题,比如在Windows代码字符编码方式是GB2312,然而转到Linux却只支持utf-8,虽然对代码部分没啥影响,但是很多中文注释部分,却一片乱码,很让 ...

最新文章

  1. PgSQL · 特性分析 · full page write 机制
  2. luogu P4085 [USACO17DEC]Haybale Feast(尺取法 + 线段树)
  3. 【机器视觉】 convert_vector_to_tuple算子
  4. 苏宁海量服务器自动化配置运维实践
  5. loading initial ramdisk 卡住_驿站晨读 | 一城市多家快递“卡住了”!有快递网点直接建议:换别家吧......
  6. Gson读写JSON 数据
  7. js获取url,截取url参数,截取url后文件名
  8. android子线程为什么不能更新ui,Android非UI线程无法更新UI?
  9. cad怎么转换成dwf格式?学会这招,解决98%工作烦恼
  10. 可靠性计算python库
  11. negative和passive的反义词_消极的近义词和反义词
  12. IntelliJ IDEA主题背景设置豆沙绿护眼色
  13. 图数据库扫盲和图数据选用
  14. 新手拍短视频技术总结:真实 随性 用心
  15. python中的数据分析库有哪些_五大常用数据科学Python库
  16. 计算机图形学:向量运算(OpenGL)
  17. HihoCoder——Trie树
  18. 17年电赛综合测评——四分频电路
  19. Python算法之旅元组的风暴之最长上升子序列
  20. 为什么VPS会被云服务器取代?

热门文章

  1. 基于FPGA的CAMERALINK解码(芯片)
  2. python的idle在哪?
  3. 缺失值可视化Python工具库:missingno
  4. c++实现split函数
  5. 本地安装word_WORA比本地人强
  6. 利达消防报警主机海上风电厂一对三十三CAN转以太网应用联网案例
  7. wget 出现无法建立SSL连接
  8. 使用mshta和csv注入配合获得主机权限
  9. 逆向android-让你也能开发微信的xposed插件-手机root(一)
  10. “老子”是伟大的多核计算科学家