博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网址url传递参数包含中文时乱码的问题的解决
阅读量:5057 次
发布时间:2019-06-12

本文共 949 字,大约阅读时间需要 3 分钟。

      实现方法很简单,就是先把文字内容转为Unicode,就是编码的过程。然后在用到的地方再转为汉字,也就是解码的过程。Unicode的概念不在本文的讲解范围之内,需要了解相关内容请查询对应介绍。

下面直接贴代码了:

 

/*
*
     * 编码从GBK转换成Unicode
     * @param str
     * @return
     
*/
    public static String Gbk2Unicode(String str) {
        StringBuffer buffer = 
new StringBuffer();
        String splitString = "";
        
for (
int i = 0; i < str.length(); i++) {
            buffer.append(splitString);
            buffer.append(Integer.toHexString(str.charAt(i)));
            splitString = ",";
        }
        
return buffer.toString();
    }
    
/*
*
     * 编码从Unicode转换成GBK
     * @param str
     * @return
     
*/
    public static String Unicode2Gbk(String str) {
        StringBuffer buffer = 
new StringBuffer();
        String[] arr = StringUtils.split(str, ',');
        
for (
int i = 0; i < arr.length; i++) {
            buffer.append((
char) Integer.parseInt(arr[i], 16));
        }
        
return buffer.toString();
    } 

 

      代码很简单,如何使用这里就不在举例了,方法里使用到了commons.lang包里的StringUtils.split方法,在使用前需要引用 commons.lang包,或是改用其他的实现方式。StringUtils.split方法的功能是把字符串按照指定字符拆解为数组。

转载于:https://www.cnblogs.com/witrays/archive/2012/05/24/2516000.html

你可能感兴趣的文章
UVA 11082 Matrix Decompressing 矩阵解压(最大流,经典)
查看>>
jdk从1.8降到jdk1.7失败
查看>>
一些关于IO流的问题
查看>>
mongo备份操作
查看>>
8 -- 深入使用Spring -- 3...1 Resource实现类InputStreamResource、ByteArrayResource
查看>>
硬件笔记之Thinkpad T470P更换2K屏幕
查看>>
一个关于vue+mysql+express的全栈项目(六)------ 聊天模型的设计
查看>>
【知识库】-数据库_MySQL 的七种 join
查看>>
.net 写文件上传下载webservice
查看>>
noSQL数据库相关软件介绍(大数据存储时候,必须使用)
查看>>
iOS开发——缩放图片
查看>>
HTTP之URL的快捷方式
查看>>
满世界都是图论
查看>>
配置链路聚合中极小错误——失之毫厘谬以千里
查看>>
代码整洁
查看>>
蓝桥杯-分小组-java
查看>>
Java基础--面向对象编程1(类与对象)
查看>>
Android Toast
查看>>
iOS开发UI篇—Quartz2D使用(绘制基本图形)
查看>>
docker固定IP地址重启不变
查看>>