java对url参数编码_Java中url传递中⽂参数取值乱码的解决⽅
java中URL参数中有中⽂值,传到服务端,在⽤Parameter()⽅法,得到的常常会是乱码,这将涉及到字符解码操作。
⽅法⼀:
在取URL传递中⽂的页⾯对字符进⾏解码:
String strPtname = Parameter("ptname");
strPtname = new Bytes("ISO-885Array-1"), "UTF-8");
这种⽅式受具体应⽤环境限制,往往在应⽤部署环境发⽣改变时,还会出现中⽂乱码。
⽅法⼆:
URLDecoder和URLEncoder,可以在任何应⽤部署环境下通⽤
URLDecoder和URLEncoder它的作⽤主要是⽤于普通字符串和application/x-www-form-rulencodedMIME字符串之间的转换。
URLEncoder类包含⼀个encode(String s,Stringcharcter)静态⽅法,它可以将普通字符串转换成application/x-www-form-urlencodedMIME字符串在线url网址编码解码
URLDecoder类包含⼀个decode(String s,Stringcharcter)静态⽅法,它可以将看上去乱码的特殊字符串转换成普通字符串
编码:URLEncoder(encode("包含中⽂的串"))
解码:java.URLDecoder.decode("需要解码的串","utf-8");
客户端
title=encodeURI(encodeURI("包含中⽂的串"));url="/print/printList!printTable.action?title="+title;
在服务器端⽤java.URLDecoder.decode(getRequest().getParameter("title"),"UTF-8"),进⾏解码。
URLDecoder和URLEncoder必须成对使⽤,报异常加try catch可解决。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。