当前位置: 首页 > news >正文

网站建立价格外贸网站推广方式

网站建立价格,外贸网站推广方式,网站建设陕icp,wordpress文章编辑器的插件解决中文乱码 常见乱码问题分析JSP和Servlet的六种中文乱码处理方法 一 、 表 单 提 交 时 出 现 乱 码 : \color{#7FFF00}{一、表单提交时出现乱码:} 一、表单提交时出现乱码: 二 、 超 链 接 时 出 现 乱 码 ( 低 版 本 浏 览 器…


常见乱码问题分析

1、中文变成看不懂的字符
如果一串中文字符变成了一串看不懂的字符如:“Ì Ô £ ¡Î Ò Ï²»¶ £ ¡”,这种情况通常是编码字符集与解码时所用的字符集不一致所造成的。比如使用GBK编码,如果使用ISO-8859-1解码的话结果就是这样。
2、一个汉字变成了一个问号
如果编码和解码的字符集都是一致的,那么可以确定该字符编码不支持中文,例如:ISO-8859-1    
3、一个汉字变成了两个问号
中文经过多次编码且其中有一次编码或者解码使用了不支持中文的字符集

JSP和Servlet的六种中文乱码处理方法

一 、 表 单 提 交 时 出 现 乱 码 : \color{#7FFF00}{一、表单提交时出现乱码:}

在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况。对于表单来说有两种提交方式:get和post提交方式,所以请求的时候便有get请求和post请求。每种方式都有着不同的解决方法,之所以出现乱码,原因就在于get请求时,其传递给服务器的数据是附加在URL地址之后的;而post的请求时,其传递给服务器的数据是作为请求体的一部分传递给服务器。这也就导致了对它们所产生的乱码的处理方式是不同的。

1、客户端的get请求
get请求提交时,容器以容器的编码来编码,如果用的tomcat,默认的编码是iso-8859-1,
(1) 在server.xml里面设置编码
或者
(2) 代码中插入如下语句

String name = request.getParameter("name");
String strName = new String(name.getByte("iso-8859-1"),"GBK");

对于不同的请求方式,解决乱码的问题也是不一样的。对于客户端的get请求来说,服务器端要求不出现乱码,解决这个问题稍微复杂一些,需要用到String类型的构造函数 ,其中的一个构造函数就是用指定的编码方式去解码,一般都用“UTF-8”的方式。只要在服务器端将请求得到的参数重新构造成一个字符串就行了。
经过构造之后,客户端输入中文并提交表单使用get请求的情况下,String就变成了中文了。
2、 客户端的post请求
对于客户端的post请求来说,处理乱码的问题就比较简单了。因为post请求时,数据是作为请求体的一部分传递给服务器的,所以只要修改请求内的编码就可以。只要在服务器端的最开始处将请求的数据设置为"UTF-8"就行了,输入如下语句:

request.setCharacterEncoding("UTF-8");

这样用户在服务器端获取到的中文数据就不再是乱码了。

二 、 超 链 接 时 出 现 乱 码 ( 低 版 本 浏 览 器 不 行 − I E 6 ) : \color{#7FFF00}{二、超链接时出现乱码(低版本浏览器不行-IE6):} IE6

在Web开发中,挺多的时候都是通过超链接去传递中文参数的,这也会导致在显示的时候也会出现乱码,对于超链接来说,它实际上是向服务器端发送了一个请求,而它发出的请求是属于get请求,所以对于超链接的乱码来说,它处理乱码的方式和表单的get请求出现乱码的方式是一样的。

三 、 重 定 向 时 出 现 乱 码 ( 低 版 本 浏 览 器 不 行 − I E 6 ) : \color{#7FFF00}{三、重定向时出现乱码(低版本浏览器不行-IE6):} IE6

有时写上response的sendRedirect方法进行重定向时也会出现乱码,重定向时实际上也是向服务器发送了一个请求,所以解决乱码的方法和上面是一样的。

四 、 浏 览 器 版 本 低 导 致 的 乱 码 : \color{#7FFF00}{四、浏览器版本低导致的乱码:}

上网的时候,有时候提交的一些信息在地址栏显示的是"%2C%C6%CC%C6"的字样,其实这都是防止出现乱码进行的解决方案,如果你的浏览器是IE6或以下版本,则我们的第二种情况和第三种情况会出现乱码(尤其是当中文是奇数的时候),这就不好使了所以我们必须采用另一种比较实际的做法:

在java.net包中提供了URLEncoder类和URLDcoder类,这两个类又分别提供了encode和decode两个静态方法,分别用于进行编码和解码。我们将要传递的中文参数进行编码之后,再传递给服务器,服务器解码之后,就可以显示中文了。

//进行编码:
URLEncoder.encode(stuname,"UTF-8")
<!--传递给服务器:-->
<a href="/1.jsp?stuname<%=stuname%>">传递</a>
//进行解码:
URLDecoder.decode(stuname,"UTF-8")

五 、 返 回 浏 览 器 显 示 的 乱 码 : \color{#7FFF00}{五、返回浏览器显示的乱码:}

在Servlet编程中,经常需要通过response对象将一些信息返回给浏览器,给我们的客户端,而我们在服务端显示的中文,但是响应给客户浏览器确实乱码,这主要是由于response对象的getWriter()方法返回的PrintWriter对象默认使用的"ISO-8859-1"字符集编码进行Unicode字符串到字节数组的转换,由于ISO-8859-1字符集中根本没有包含中文字符,所以Java在进行转换的时候会将无效的字符编码输出给客户端,于是便出现了乱码,为此ServletResponse接口中便定义了setCharacterEncoding,setContentType等方法来指定getWriter方法返回的PrintWriter对象所使用的字符集编码,所以我们在写Servlet程序中,在调用getWriter方法之前设置这些方法的值。

只要编写Servlet文件中含有响应给客户端的信息,那么就要写上这两句话。最好写上第二句话,因为它的优先级高,它的设置结果将覆盖setContentType等方法设置的字符编码集。

六 、 修 改 T o m c a t 的 编 码 : \color{#7FFF00}{六、修改Tomcat的编码:} Tomcat

在get请求所导致乱码问题中,还有一种解决的方案,我们常用Tomcat作为运行Servlet和JSP的容器,而Tomcat内部默认的编码是ISO-8859-1,所以对于get请求方式,其传递的数据(URI)会附加在访问的资源后面,其编码是Tomcat默认的,如果修改该URI的编码,那么对于所有get请求方式便不会出现乱码了,包括上边说的重定向和超链接,在Tomcat的配置文件server.xml中找到修改Tomcat端口的地方,在其内部加入URIEncoding属性,设置为和你的项目中所设的编码一样的值,这里全部都是UTF-8。

  • 第一处
    修改Tomcat编码
    位置:Tomcat安装路径/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"useBodyEncodingForURI="true"  URIEncoding="UTF-8"/>
  • 第二处
    Java虚拟机中字符串编码默认跟随操作系统,中文版的Windows系统编码为GBK,Linux系统为UTF8,如果需要手动设定编码,可以在JVM启动时添加以下参数:
    位置:tomcat安装路径/bin/catalina.bat
set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%"

修改为如下:

set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF8 %JSSE_OPTS%"

注 意 ! ! ! 此 方 法 可 能 会 导 致 c m d 控 制 台 输 入 乱 码 , 暂 时 未 找 到 解 决 办 法 。 \color{#ff461f}{注意!!!此方法可能会导致cmd控制台输入乱码,暂时未找到解决办法。} !!!cmd

在编写Servlet和JSP的时候,为了避免出现乱码,最重要的就是:采用一致的编码,如果编码都一致了,肯定不会出现乱码。

参考:

1.解决中文乱码的几种解决方法

2.java中文乱码问题解决方案整理

http://www.dinnco.com/news/34152.html

相关文章:

  • 公司官网格式设计谷歌seo价格
  • 武邑网站建设代理官网seo怎么做
  • 网站制作的常见布局超能搜索引擎系统网站
  • cms建站流程靠谱seo外包定制
  • WordPress建网盘上饶seo博客
  • 所得税汇算清缴在哪个网站做推广引流方法有哪些?
  • 广州门户网站建设方案sem工作内容
  • 网站开发工作 岗位怎么称呼营销策划书模板
  • 成都网站建设是什么意思seo技术培训教程视频
  • 网站编程培训学校有哪些浏览器网站进入口
  • wordpress 文章付费网络优化seo
  • 网站建设 阿里云近期国内新闻热点事件
  • opencart做视频网站百度站长工具使用方法
  • 网页游戏网站搭建网络营销出来做什么
  • 无网站做百度推广怎么把网站排名排上去
  • 电子商务网站的建设方式网络seo排名
  • 网站托管公司宁波seo网站排名优化公司
  • 朝阳周边网站建设电商热门关键词
  • 胶州网站搭建公司互联网服务平台
  • 佛山网站建设公司88百度关键词指数排行
  • 工信部的网站备案拼多多怎么查商品排名
  • 北京企业免费建站nba最新资讯
  • 唐山的网站建设上海专业seo服务公司
  • 网站seo报表中国十大电商公司排名
  • 网站建设的专业术语yw77731域名查询
  • 网站开发技术主管工作职责搜索引擎分类
  • 国外学做咖啡的网站交换链接网站
  • c2c交易平台官方网站海外网站cdn加速
  • 东莞做网站公司哪家好怎么让网站快速收录
  • 设计做的网站哪些好专门制作小程序的公司