关于jsp include html文件导致中文乱码的问题

  最近看到很多论坛上说,无非就是以下的三点:

  一,在静态网页中,添加   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />。但问题是这仅仅修改了当html文件被编译后传递给浏览器的内容编码,仍然没有修改其页编码,很多情况下,这不能解决问题;

 二,在jsp文件中添加<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>.事实证明,当jsp include html时,jsp的汉字并不会乱码,显然这也是行不通的。

三,修改tomcat xml文件。事实证明tomcat7.0不支持这个方法。

  笔者有以下有几个个人认为能从根本上解决问题的方法,希望读者借鉴。

 一,从根本上解决页编码问题。将已经写好的html文件或jsp文件用txt打开。点击另存为,选择编码格式为UTF-8,确定。这时,你的问题可能已经解决了。(虽然对于大项目而言,这种方法实在不可取,但是对于初学者而言,能起到帮助作用)。

 二,在获取客户提交信息,也就是说form的method是post时,在很多情况下会出现request得到的汉字内容会乱码,这时,我们首先将获取到的字符串用UTF-8编码,然后存放到一个字节数组中,再将这个数组转化为字符串。例如:

  String username=request.getParameter("username");

  byte busername[]=username.getBytes("UTF-8");

  username=new String(busername);

 三,每次调用一次下面的方法即可。

<%!

public String toChinese(String str) throws java.io.UnsupportedEncodingException

{

byte b[]=str.getBytes("UTF-8");

str=new String(b);

return str;

}

%>

(具体内容请参加张银鹤等编著的《jsp动态网站开发》)


评论 3 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

cquptzhaoyu

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值