JSP乱码解决方法

          

1、jsp向jsp传值中文乱码 ,解决方法:


需导入<%@ page import="java.net.*" %>包        
 String address=java.net.URLDecoder.decode(request.getParameter("address"));
          address=new String(address.getBytes("ISO-8859-1"), "utf-8"); //接受参数时进行编码转换
          System.out.println(filename+address); 

2、在头部加上 <%@ page language="java" import="java.util.*"  contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
 pageEncoding="UTF-8" 
注:此句编码格式为 jsp文件的存储格式。 Eclipse会根据这个编码格式保存文件。并编译 jsp文件,包括里面的汉字。
contentType="text/html; charset=utf-8"  
注:编码为解码格式,因为存为utf-8的文件被解码为iso8859-1,这样如有中文肯定出乱码。也就是必须一致。而第二处所在的这一行,可以没有。缺省也是使用iso8859-1的编码格式。所以如果没有这一行的话,也会出现乱码。必须一致才可以。

在head部加上
<head>
<meta http-equiv="Content-Type" content="text/html charset=utf-8">
</head>
注:第三处编码为控制浏览器的解码方式。如果前面的解码都一致并且无误的话,这个编码格式用不用设置都可以。有的网页出现乱码,就是因为浏览器不能确定使用哪种编码格式。因为页面有时候会嵌入页面,导致浏览器混淆了编码格式出现了乱码。

3\通过request.seCharacterEncoding ("UTF-8")对请求进行统一编码,就实现了中文的正常显示。
4\ 通过传参数时转码
<%@ page import="java.net.*" %>
<a href='./MyJsp2.jsp?act=<%=URLEncoder.encode("中国人 非常好")%>'>test</a>
接收页面进行参数处理。
String tempVal = URLDecoder.decode(request.getParameter("act"));

out.println(new String(tempVal.getBytes("ISO-8859-1"), "utf-8"));

5、js传参数 进行转码处理。
?user_name="+encodeURI(encodeURI(args参数))
类里面进行转码处理
URLDecoder.decode(user_name,"UTF-8")
转自:http://www.cnblogs.com/chengkai/articles/2171848.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值