URL参数中汉字转换为16进制Unicode形式

Posted 安谧世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了URL参数中汉字转换为16进制Unicode形式相关的知识,希望对你有一定的参考价值。

导入JAR包: 
import java.net.*; 
把汉字转换为16进制Unicode形式: 
String xw="新闻中心"; 
String name=URLEncoder.encode(xw,"utf-8"); 
把16进制Unicode形式字符串转换为汉字: 
URLDecoder.decode("%E6%96%B0%E9%97%BB%E4%B8%AD%E5%BF%83","utf-8"); 

注意:从A(UTF-8)页面中跳到B页面时:参数name带有16进制参数值时,在B页面中使用,request.getParameter()获取的参数是乱码。还不能使用URLDecoder.decode(name,"utf-8");获取"新闻中心"; 
补充: 
在A页面中: 
<% 
String xw="新闻中心"; 
String name=URLEncoder.encode(xw,"utf-8"); 
request.setParameter("name","name");%> 
在B页面中: 
<% 
String xw=URLDecoder.decode(new String(request.getParameter("name").getBytes("iso-8859-1"),"utf-8"),"utf-8");%>这样就不会出现乱码了。

以上是关于URL参数中汉字转换为16进制Unicode形式的主要内容,如果未能解决你的问题,请参考以下文章

C#基础基础知识点char类型的数值转换

如何把16进制编码转换为中文

16进制可逆加密算法

vs2010 汉字utf8问题

UniCode编码表

汉字怎么转Unicode编码 十六进制的