如何将这个以下字符串(unicode字符集)
String string = "\\" + "u97e9" + "\\" + "u56fd";
转换成对应的中文显示(utf-8字符集)?求解!
String string = "\\" + "u97e9" + "\\" + "u56fd";
转换成对应的中文显示(utf-8字符集)?求解!
解决方案 »
- win7记事本编码问题,帮忙看看
- Java communications API 能编写USB通信程序吗?
- 《java数据结构和算法》这本书有没有对应的视频?
- 有一个转码问题,请前辈们帮助一下
- 怎么在这里发图片?
- 以父类的变量访问子类的成员在程序上有什么好处?
- 一个JAVA初学者的困惑!
- 一个String类型的变量,当它是中文时,调用length()怎么得到的长度是实际长度的一半呢?因为一个中文字符占两个字节啊?
- [推荐]Java的内存泄漏
- 如何处理此错误:java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]没有执行可选特性
- hibernate影射的问题 请教
- 怎么textarea或其他文本控件中实现高亮显示文本?
==>
String str = "\\" + "u97e9" + "\\" + "u56fd";
new String(str.getBytes("UTF-8"));
byte[] b = new byte[] {(byte)'\u97e9',(byte)'\u56fd'};
System.out.println(new String(b));
StringBuffer sb=new StringBuffer();
for(int i=0;i<str.length()/4;i++)
{
int j=Integer.parseInt(str.substring(i*4,i*4+4),16);
sb.append((char)j);
}
System.out.println(sb);
{
StringBuilder sb = new StringBuilder();
int i=-1;
int pos=0;
while((i=utfString.indexOf("\\u",pos))!=-1)
{
sb.append(utfString.substring(pos,i));
if(i+5<utfString.length())
{
pos=i+6;
sb.append((char)Integer.parseInt(utfString.substring(i+2,i+6),16));
}//if
}//while
String s= sb.toString();
return new String(s.getBytes("UTF-8"));
}
//用法:String str = "\\" + "u97e9aa" + "\\" + "u56fdbb";
//String utf8str=convertUTF8(str);
{
StringBuilder sb = new StringBuilder();
int i=-1;
int pos=0;
while((i=utfString.indexOf("\\u",pos))!=-1)
{
sb.append(utfString.substring(pos,i));
if(i+5<utfString.length())
{
pos=i+6;
sb.append((char)Integer.parseInt(utfString.substring(i+2,i+6),16));
}//if
}//while
sb.append(utfString.substring(pos));
String s=sb.toString();
return new String(s.getBytes("UTF-8"));
}用法: String str = "aa\\" + "u97e9aabb" + "\\" + "u56fdcc";
String utf8str=convertUTF8(str);
String str = "\\" + "u97e9" + "\\" + "u56fd";
java.util.regex.Pattern p = java.util.regex.Pattern.compile("\\\\u(\\w{4})");
java.util.regex.Matcher m = p.matcher(str);
while(m.find())
System.out.println((char)Integer.valueOf(m.group(1), 16).intValue());
怎么是“韩国”啊……