深圳Web培训
达内深圳罗湖中心

185-8886-4961

热门课程

如何解决web项目中的中文乱码?

  • 时间:2016-07-12
  • 发布:深圳Web培训
  • 来源:达内新闻

在进行web项目中,你肯对会碰到中文乱码的问题。今天,深圳达内web前端培训(sz.web.tedu.cn)专家就教大家如何解决web项目中的中文乱码。希望能对你有所帮助!

如何解决web项目中的中文乱码?

第一种情况:调用jsp页面中文显示乱码

问题描述:通过浏览器调用jsp页面,在浏览器中显示的中文内容出现乱码。

解决方法:首先确认本jsp在编辑器中保存文件内容时,使用的是utf-8的编码格式,然后在jsp页面的开始处添加<%@ pageEncoding="utf-8"%>就可以解决这种中文乱码问题。

第二种情况:调用servlet页面显示乱码

问题描述:通过浏览器调用servlet,servlet在浏览器中显示的内容出现乱码。

解决方法:在servlet使用response对象输出前,先执行response.setContentType("text/html;charset=utf-8");设定输出内容的编码为utf-8。

第三种情况:post表单传递参数乱码

问题描述:通过jsp,html,或servlet中的表单元素把参数提交给对应的jsp或者servlet时,在接收的jsp或servlet中接收到的参数中文显示乱码。

例如:

提交jsp代码如下:
<%@ page language="Java" pageEncoding="utf-8"%>
接收参数的jsp代码如下:
<% @  page language="java" pageEncoding="utf-8"%>
接收表单
      <% 在这里插入
           request.setCharacterEncoding("utf-8");
      %>
       用户名:<%=request.getParameter("username")%>
      密     码:<%=request.getParameter("password")%>

解决方法:在接收post提交的参数前,使用request.setCharacterEncoding("utf-8")设定接收参数的内容格式为utf-8编码。见接收表单中的插入内容即可。当然这种乱码问题最好使用中文过滤器的方法最好。

第四种情况:URI方式传递参数乱码

问题描述:使用表单传递参数,可以通过post或get方式,不适用表单,还可以使用链接方式传递参数,这种传递参数方式本质上就是get方式传递参数,这种方式中传递的参数出现中文时也可能出现乱码。

如:显示用户名和密码

解决方法:问题本质是get方式传递的参数内容默认编码方式问ISO8859-1,而且 使用request.setCharacterEncoding("utf-8")也无法解决问题,要解决这个问题,修改tomcat服务器的配置文件。 修改tomcat目录下的conf/server.xml文件的第43行:

修改前内容:
<connector port="8080" protocol="HTTP/1.1"
     maxThreads="150"   connectionTimeout="200000"
     redirecPort="8443"/>

修改后内容:
<connector port="8080" protocol="HTTP/1.1"
     maxThreads="150"   connectionTimeout="200000"
     redirecPort="8443"    URIEncoding="utf-8"/>

这样就可以解决这种类型的乱码问题。

第五种情况:

问题描述:在使用一些类库或者框架时,为了实现页面内容国际化,需要编写对应的properties文件。而properties文件中的中文内容在显示的时候也会出现乱码。
解决方法:这个乱码问题可以通过jdk中的native2ascii工具解决。使用如下命令:

native2ascii   -encoding   utf-8  display.properties    display_zh_CN.properties

出现乱码问题的原因是因为java编译器只能处理Latin-1或unicode编码的字符文件。

如果想学习的同学可以参加深圳达内web培训, 免费试听,或周末免费参加深圳web培训公开课程试听,这里有强大的师资阵容,“师者,所以传道授业解惑也”,讲师,是教育的主体,是影响整体办学质量、 学员学习质量的重要因素。所以深圳达内 web培训竭尽全力为学员提供最强大的师资力量,让学员接受最好的教育,学习最前沿的技术。

掌握一门牛逼闪闪技术,待遇自然不在话下。 选择培训机构等于选择未来开发行业的根基,优秀的web培训机构不仅仅是传授专业开发知识,更重要的是培养学员的开发思维和动手能力,可谓授人以鱼不如授 人以渔!而这些,达内可以做到!

上一篇:常用的Web前端开发工具有哪些?
下一篇:【达内WEB教程】Web安全趋势与核心防御机制

精确流量调度新思路-HttpDNS服务

构建一站式AJAX Web应用的开发框架

JQuery 之父: 好好学习 天天编码

从Bootstrap到 Amaze跨屏适配兼容更精彩

选择城市和中心
贵州省

广西省

海南省