黑马程序员技术交流社区
标题:
怎么把Unicode编码转换成汉字,求大牛们赶紧出手...
[打印本页]
作者:
韩伟
时间:
2012-7-24 15:28
标题:
怎么把Unicode编码转换成汉字,求大牛们赶紧出手...
有这样一段字符串,String str = 本书共分三个部分内容{uFF0C}{u4ECB}{u7ECD}{u4E86}{u9AD8}{u7B49}{u6570}{u5B66};
后面大括号中是unicode编码,怎么把它们转换成汉字,并且传递给 str ???
作者:
梁小波
时间:
2012-7-24 16:27
public static void main(String args[])
{
String str="\uFF0C\u4ECB\u7ECD\u4E86\u9AD8\u7B49\u6570\u5B66";
System.out.println(str);
}
复制代码
{:soso_e153:}是高数!吓死我了。。。。
~1JPPBQ2_JZ6NT{AWD2HA4A.jpg
(5.17 KB, 下载次数: 45)
下载附件
2012-7-24 16:26 上传
作者:
李菁
时间:
2012-7-24 19:12
String str1=new String(str.getBytes("unicode"),"gbk");
str是你想要转换编码方式的字符串
str1是转换成gbk编码方式的字符串
作者:
韩伟
时间:
2012-7-25 08:33
看来大家是理解错了,str里面的是字符串,{uFBCA}也是字符串,如果不把它转换成unicode类型,是无法实现转换的。而且我要处理的文件有十多万行,更不可能把它们手动敲进去
作者:
肖琦
时间:
2012-7-25 10:44
public class Test{
public static void main(String[] args) {
String str = "本书共分三个部分内容{uFF0C}{u4ECB}{u7ECD}{u4E86}{u9AD8}{u7B49}{u6570}{u5B66}";
String[] parts = str.split("[url=file://\\{|\\}\\{|\\]\\{|\\}\\{|\\[/url]}");
StringBuffer sb = new StringBuffer();
for (int i = 0; i < parts.length; i++) {
if(parts[i].matches("^u[0-9A-F]{4}$")){
sb.append((char)Integer.valueOf(parts[i].substring(1), 16).intValue());
}else{
sb.append(parts[i]);
}
}
System.out.println(sb);
//输出结果:
//本书共分三个部分内容,介绍了高等数学
}
}
复制代码
作者:
肖琦
时间:
2012-7-25 10:51
系统好像是把我的代码改啦。
以上 str.split() 方法中的参数是 \\{|\\}\\{|\\}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2