如何正确在JSP传送中文或特殊字符

本文介绍如何使用URL编码解决浏览器传输中文或特殊符号时的问题。通过将字符串转换为UTF-8格式并进行编码,可以确保参数正确传递并在接收端解码还原。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

浏览器传送参数时,可能会将中文或特殊符号忽略。
这时需要将字符串进行编码,转换成浏览器支持的类型。如:%E4%B8%AD%E5%9B%BD
然后在接收页将之转换回来,从而巧妙的获取到参数。

String str1 = "中国";     //需要传送的参数。
String str2 = java.net.URLEncoder.encode(str1,"utf-8");     //将str1转换成utf-8格式

<a href="action.jsp?text="+str2+"">点击</a>
//连接地址为:http://localhost/action.jsp?text=%E4%B8%AD%E5%9B%BD

action.jsp页面
String str3 = new String(request.getParameter("text").getBytes("ISO8859-1"));     //设置获取参数的字符集,避免出现乱码或问号。
str3 = java.net.URLDecoder.decode(str3,"utf-8");   

out.println("text="+str3);

通过这种方法就可以使用GET方法在JSP中进行特殊字符的传输。

欢迎大家拍砖。


   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值