java中post时中文乱码

http://blog.chinaunix.net/uid-12348673-id-3335300.html

设置流的编码,就避免了乱码

public static String post(String path,String params) throws Exception{
 HttpURLConnection httpConn=null;
 BufferedReader in=null;
 //PrintWriter out=null;
 try {
  URL url=new URL(path);
  httpConn=(HttpURLConnection)url.openConnection();
  httpConn.setRequestMethod("POST");
  httpConn.setDoInput(true);
  httpConn.setDoOutput(true);
  System.out.print("params="+params);
 //utf-8
  PrintWriter ot = new PrintWriter(new OutputStreamWriter(httpConn.getOutputStream(),"utf-8"));
  ot.println(params);
  ot.flush();
  //out=new PrintWriter(httpConn.getOutputStream());
  //out.println(params);

  //out.flush();

  //读取响应
  if(httpConn.getResponseCode()==HttpURLConnection.HTTP_OK){
   StringBuffer content=new StringBuffer();
   String tempStr="";
   //utf-8
   in=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"utf-8"));
   while((tempStr=in.readLine())!=null){
    content.append(tempStr);
   }
   return content.toString();
  }else{

   throw new Exception("请求出现了问题!");

  }
 } catch (IOException e) {
  e.printStackTrace();
 }finally{
  in.close();
 // out.close();
  httpConn.disconnect();
 }
 return null;
}

  

时间: 2024-10-10 22:23:58

java中post时中文乱码的相关文章

java中IO及中文乱码问题

第一次发这种博客,所以一直在纠结怎么开头,干脆直奔主题吧,把自己的一些总结体会记录下来,先从简单的学习开始,希望可以慢慢坚持,以后的内容可以写的更好更有意义. 其实真正在工作中中文乱码的问题遇到的不多,那是因为公司为了开发方便所以文件都统一编码了.但是我觉得还有很有必要去稍微了解一下其原理的. IO就是输入输出流,用面向对象来理解的话,就是输入,输出流对象,主要用来操作文件对象.所以再稍微谈谈文件的概念,即File对象.在Java中,File不是我们平时生活中指的某个具体文件,而是某个路径对象,

Java中Servlet输出中文乱码问题

1.现象:字节流向浏览器输出中文,可能会乱码(IE低版本) private void byteMethod(HttpServletResponse response) throws IOException, UnsupportedEncodingException { String date = "你好"; ServletOutputStream outputStream = response.getOutputStream(); outputStream.write(date.get

cmd黑窗口查询数据库中数据时中文乱码

1.打开cmd窗口,输入show variables like 'character_set_%'; 2.因为操作系统是中文操作系统,默认使用的字符集是GB2312,所以需要把输出窗口使用的字符编码改成gb2312才能够正常显示中文. 使用如下的命令设置输出窗口使用的字符编码:set character_set_results=gb2312; 原文地址:https://www.cnblogs.com/lkldeblog/p/10650393.html

get/post时中文乱码问题的解决办法

常有的方法,get请求用在tomcat的编码改为utf-8 即可 post 过滤器就可以 一.常识了解 1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.java.nio.charset.Charset.defaultCharset() 获得平台默认字符编码: 3.getBytes() 是通过平台默认字符集进行编码: 二.中文乱码出现 在学习任何一门技术时,经常会有初学者遇到中文乱码问题,比如MySQL,是因为在安装时没有设置:而在Servlet中

关于Android与pc通信时中文乱码的分析和解决

初步实现了Android与pc服务器的通信之后,又碰到了传说中令人头疼不已的中文乱码问题.既然出现了乱码,那么原因自然是协议不通了.我们知道eclipse中默认的编码标准是GBK,而安卓程序开发所默认的布局文件编码标准则是utf-8,这样一来,我们双方通信的时候便难免出现乱码.要解决它,就要从二者转换方面着手.     首先我们知道,从安卓手机界面上获得的文字,其编码字符集是utf-8,所以,当我们的java文件获得它时,它是以utf-8形式编译的.所以这里,在得到EditText中的文字之后,

Linux中vi显示中文乱码的问题

由于在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打开会成乱码.修改了一下配置文件,使vi支持gb编码就好了.$vi ~/.vimrclet &termencoding=&encodingset fileencodings=utf-8,gbk$:wq再次打开vi,显示就正常了.vim中编辑不同编码的文件时需要注意的一些地方此文讲解的是vim编辑多字节编码文档(中文)所要了解的一些基础知识,注意其没有涉及gvim,纯指字符终端下的vim.

IDEA中 tomcat 控制台中文乱码解决 及GsonUtils无法转换时间格式

IDEA中 tomcat 控制台中文乱码解决 1.找到tomcat 安装目录下的 conf /logging.properties 文件打开 2.将 java.util.logging.ConsoleHandler.encoding = UTF-8 修改为 java.util.logging.ConsoleHandler.encoding = GBK 3.保存后 重启idea ————————————————GsonUtils需添加时间模式 datePattern指定模式 原文地址:https:

maven测试时中文乱码问题解决方法

pom.xml增加-Dfile.encoding=UTF-8配置,如下: 1 <plugin> 2 <!--升级到新版本解决控制台乱码问题--> 3 <groupId>org.apache.maven.plugins</groupId> 4 <artifactId>maven-surefire-plugin</artifactId> 5 <version>2.19.1</version> 6 <confi

关于JAVA中URL传递中文参数,取值是乱码的解决办法

前几天看到有网友在问URLDecoder和URLEncoder方面的使用问题,突然想起,原来我刚遇到这两个类时,也觉得很神密,由此可以想想初学者的心情,于是便有了今天的这篇文章. 其实,这两个类的使用并不复杂,URLDecoder和URLEncoder它的作用主要是用于普通字符串和application/x-www-form-rulencodedMIME字符串之间的转换,一般的人会以为后一个字符串比较专业,以为有什么高深的知识,其实不然. 下面,我们在在"百度"中搜索"网络时空",会看到如下所示