乱码解决

1、为什么表单提交中文会出现乱码

  当表单提交时,浏览器会对中文参数值进行编码(会使用打开表单所在的页面时的字符集进行编码)

  Web服务器在默认的情况下会使用iso-8859-1去解码

  编码与解码方式不一致时,就会出现乱码

2、解决POST方式时的乱码问题

  step1:确保表单所在的页面按照指定的字符集打开

    <meta http-equiv="content-type" content="text/html;charset=utf-8">

  step2:在服务器端按照这个编码格式解码即可

    request.setCharacterEncoding("utf-8")

    添加在读取参数的前面

    此方法只针对post请求有效

3、解决get方式时的乱码问题

  step1:使用meta确保表单所在页面按指定字符集打开

  step2:在服务器端使用如下方式获取参数值

    String username=request.getParameter("");

    username=new String(("iso-8859-1"),"utf-8");

4、为什么返回的页面会有乱码

  编码:将Unicode字符集对应的字节数组转换成某种本地字符集(如UTF-8)对应的字节数组

  解码:将某种本地字符集对应的字节数组转换为Unicode字符集对应的字节数组

  编码和解码使用的字符集不一致就产生了乱码问题

5、如何解决输出内容的乱码

  在获取WriteOut对象及调用out方法之前调用setContentType("text/html;charset=utf-8")

  作用:

    通知容器,在调用out.println方法输出时,使用指定的字符集

    生成消息头中content-type的值,通知浏览器,服务器返回的数据类型和字符集

时间: 2024-08-28 14:09:00

乱码解决的相关文章

cocos2d-x 3.4 中文乱码解决之道

cocos2dx 中文乱码解决之道 需要引入五个文件 1.iconv.h 2.iconvString.cpp 3.iconvString.h 4.iconv.dll 5.libiconv.lib 完整下载地址http://download.csdn.net/detail/dao_1990/8935089 iconv.h /* Copyright (C) 1999-2003 Free Software Foundation, Inc. This file is part of the GNU LI

sublime text3 中 CTags: Rebuild Tags执行之乱码解决方法

最近本人从事Golang开发,在开发工具上公司人员一般选择sublime text,所以,我也选择sublime text 3作为Golang的开发工具. 今天上班时安装好了sublime text 3 及 gosublime,gogdb和ctags,但是按照网上其他人所说的手册进行安装ctags后,在执行CTags: Rebuild Tags时出现如下乱码. 乱码解决: 出现乱码的原因其实是sublime text找不到ctags.exe.所以需要配置CTags的配置文件.配置手册:subli

Eclipse中文注释乱码解决

Eclipse中文注释乱码解决 将别人的项目或JAVA文件导入到自己的Eclipse中时,常常会出现JAVA文件的中文注释变成乱码的情况,主要原因就是别人的IDE编码格式和自己的Eclipse编码格式不同. 总结网上的建议和自己的体会,可以参考以下几种解决方式: 1 改变整个文件类型的编码格式 1)  eclipse->window->preferences->General->Content Types    2)  找到要修改的文件的类型(JAVA,JSP等等),在下面有个De

asp.net url址址中中文汉字参数传递乱码解决方法

中文乱码是网站开发中会常碰到的问题,今天我们来讲一下关于url址址中中文汉字参数传递乱码解决方法,有需要的朋友可以参考下.在cs文件里传参的时候用UrlEncode: Response.Redirect("B.asp教程x?Name="+Server.UrlEncode(Name)); 接参的时候用UrlDecode: Response.Write(Server.UrlDecode(Request.QueryString["Name"])); 脚本儿里传参的时候用e

Jsp---cookie中文乱码解决方法

//写cookie <form method="Get"> 姓名: <input type="text" name="name" /> <br /> <input type="submit" value="确定" /> </form> <!-- 写入cookie到客户端 --> <% if (request.getParamete

CentOS6.5安装Cacti统计图乱码解决

这个就是rrdtool调用字体失败 安装字体即可 [[email protected] -]# yum -y install  cjkuni-ukai-fonts #安装字体 [[email protected] -]# fc-cache -f -v #刷新字体哦缓存 CentOS6.5安装Cacti统计图乱码解决,布布扣,bubuko.com

http中 get方法 传送中文参数乱码解决办法

http传送参数有两种方法:get 和post  当时使用get方法传递中文参数是会有乱码现象 解决办法: 1.在jsp压面url后面的参数使用 encodeURI:"&zxbghy="+ encodeURI(zxbghy) 2.在后台java获取参数时使用字节数组:temphgdmhy = new String(hgdmhy.getBytes("ISO-8859-1"), "UTF-8");  案例,用get方法传递两个中文参数:zxb

mysql导入导出数据中文乱码解决方法小结

inux系统中 linux默认的是utf8编码,而windows是gbk编码,所以会出现上面的乱码问题. 解决mysql导入导出数据乱码问题 首先要做的是要确定你导出数据的编码格式,使用mysqldump的时候需要加上--default-character-set=utf8, 例如下面的代码: 复制代码 代码如下: mysqldump -uroot -p --default-character-set=utf8 dbname tablename > bak.sql 那么导入数据的时候也要使用--

win7下zend studio5.5中文乱码解决方法

win7下zend studio5.5中文乱码解决方法 1.打开 C:Documents and SettingsAdministratorZDEconfig_5.5desktop_options.xml(这个地址要根据自己的电脑而定.) 2.查找 editing.encoding 3.修改里面为 <encoding name=”UTF-8″/> 4.保存,并将该文件属性设置为只读,否则zend每次启动都会将 desktop_options.xml 初始化 5.重启 zend 注意,你现在打开

SpringMVC中使用@ResponseBody注解返回值,Ajax取得中文乱码解决方法

Spring使用AnnotationMethodHandlerAdapter的handleResponseBody方法, AnnotationMethodHandlerAdapter使用request header中"Accept"的值和messageConverter支持的MediaType进行匹配,然后会用"Accept"的第一个值写入 response的"Content-Type".一般的请求都是通过浏览器进行的,request heade