参照博文:http://blog.csdn.net/howlaa/article/details/12834595
做视频的时候,视频的Url和videoName( 含中文)放在的href中,然后转向播放页面,地址栏中的url存在中文编码问题.
问题:使用了encodeURI对Url进行了一次编码,依然是中文乱码。
解决方法:
1.在js中使用encodeURI对url进行双重编码。(一定要双重的,之前用一重的似乎并没有用)
var url="<%=basePath%>videoJsp/videoSearch.jsp?key="+search_key; url=encodeURI(encodeURI(url)); window.location.href=url;
解码的话同样需要解码两次:
video_name=encodeURI(encodeURI(video_name));
2.在使用java代码应该也是可以的.
同样使用的是java库中的
借鉴前面的博文,分析原因:
encodeURI函数主要是对Url老进行转码,他默认采用UTF-8的编码.
encodeURI编码的格式是:一个汉字有三个字节组成,每个字节会转成16进制的编码,同时会加上%.
假设页面端输入的中文是一个“中”,按照下面步骤进行解码:
原文:http://www.cnblogs.com/ting1996/p/6897802.html