当前位置: 代码迷 >> Java Web开发 >> \345\244\247\345\256\266\345\245\275\343\200\202如何转成中文“大家好”
  详细解决方案

\345\244\247\345\256\266\345\245\275\343\200\202如何转成中文“大家好”

热度:952   发布时间:2016-04-14 21:26:39.0
\345\244\247\345\256\266\345\245\275\343\200\202怎么转成中文“大家好”
本帖最后由 a105865708 于 2015-02-28 14:39:25 编辑
\345\244\247\345\256\266\345\245\275\343\200\202   怎么转成中文   “大家好”
------解决思路----------------------
你这串数字是什么编码格式得出的?
------解决思路----------------------

String str = "\\345\\244\\247\\345\\256\\266\\345\\245\\275\\343\\200\\202";
Pattern pattern = Pattern.compile("\\\\");
String [] strs = pattern.split(str);
StringBuffer sb = new StringBuffer();
for(String s : strs){
if(s != null && s.trim().length() > 0){
String st = Integer.toHexString(Integer.valueOf(s,8));
sb.append("%").append(st);
}
}
try {
System.out.println(URLDecoder.decode(sb.toString(), "utf-8"));
} catch (Exception e) {
e.printStackTrace();
}

------解决思路----------------------
不额外import任何类库的解决办法,实现了URL编码和UTF8编码之间的转换
原创内容,引用请注明原始出处;商用的话,需要测试包含各种保留字符时是否有问题

代码超过了1万个字符,贴了几次都失败了,只好贴在下面的网址里了
请参考【http://my.bccn.net/paste/1266/】
------解决思路----------------------
执行结果:
[大家好。]:[%E5%A4%A7%E5%AE%B6%E5%A5%BD%E3%80%82]:[\345\244\247\345\256\266\345\245\275\343\200\202]
[\345\244\247\345\256\266\345\245\275\343\200\202]:[%E5%A4%A7%E5%AE%B6%E5%A5%BD%E3%80%82]:[大家好。]
[百分号编码]:[%E7%99%BE%E5%88%86%E5%8F%B7%E7%BC%96%E7%A0%81]


补充说明:
这种编码方式称为百分号编码或者URL编码,当URL网址里面有中文(Unicode)的时候,就会转换为百分号开头的这种编码

在百度的首页里面输入【百分号编码】,按下【百度一下】,浏览器里的地址栏看起来是中文的【百分号编码】
但是拷贝到记事本等文本编辑器的时候,就会看到,其实是下面这样的内容,其中%开头的那些就是【百分号编码】

【http://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=%E7%99%BE%E5%88%86%E5%8F%B7%E7%BC%96%E7%A0%81&rsv_pq=d319f1ba00009a47&rsv_t=5358%2Bf%2BY%2ByKNfNWVvyns%2Bmi5W%2BY0shVovXiGb9GYzfwZhU3jy4R5H42ufmI&bs=http%3A%2F%2Fsearch.yahoo.co.jp%2Fsearch%3Fei%3DUTF-8%26fr%3Dcrmas%26p%3D%25E7%2599%25BE%25E5%2588%2586%25E5%258】
  相关解决方案