请问“海”是unicode吗?用java怎么转换成中文啊?????

dvkc 2008-06-27 09:39:29
海-谢谢

有谁知道上面的字符怎么转换成中文啊???
在线等待高手指教!!
...全文
1218 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
dvkc 2008-06-27
  • 打赏
  • 举报
回复
呵呵,谢谢大家的热烈讨论!
tsizhao 2008-06-27
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 bao110908 的回复:]
Java codeimport org.apache.commons.lang.StringEscapeUtils;

public class Test {

public static void main(String[] args) {
String str = "海-谢谢";
str = StringEscapeUtils.unescapeHtml(str);
System.out.println(str);
}
}



输出结果:


Java code海-谢谢



如果你用到了其他的框架,那么 commons-lang-x.x.jar 估计就在你的 classpath …
[/Quote]

为什么我解不出来?抛异常:
java.lang.NumberFormatException: For input string: "x6d77"
hjy273 2008-06-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 dvkc 的帖子:]
海-谢谢

有谁知道上面的字符怎么转换成中文啊???
在线等待高手指教!!
[/Quote] 用转码工具转,上面意思是 海:谢谢
  • 打赏
  • 举报
回复
import org.apache.commons.lang.StringEscapeUtils;

public class Test {

public static void main(String[] args) {
String str = "海-谢谢";
str = StringEscapeUtils.unescapeHtml(str);
System.out.println(str);
}
}


输出结果:

海-谢谢


如果你用到了其他的框架,那么 commons-lang-x.x.jar 估计就在你的 classpath 下了,
如果没有的话,到 apache.org 上去下载:http://commons.apache.org/lang/
  • 打赏
  • 举报
回复
这个是 Unicode 编码,用 Commons Lang 包里的工具就能转了。
胡矣 2008-06-27
  • 打赏
  • 举报
回复
不是unicode
dvkc 2008-06-27
  • 打赏
  • 举报
回复
等等给大家加分,结贴!

再次谢谢runshine!
dvkc 2008-06-27
  • 打赏
  • 举报
回复
Java代码:


try {
// Convert from Unicode to UTF-8
String string = "\u6d77\u8c22\u8c22";
byte[] utf8 = string.getBytes("UTF-8");

// Convert from UTF-8 to Unicode
string = new String(utf8, "UTF-8");
System.out.println(string);
} catch (UnsupportedEncodingException e) {
}
dvkc 2008-06-27
  • 打赏
  • 举报
回复
呵呵,谢谢大家,刚才试过了,确实是被转过码的unicode,
要把“&#x”换成“\u”,";"去掉,变成\u6d77\u8c22\u8c22

lookhang 2008-06-27
  • 打赏
  • 举报
回复
unicode 2 string

public static String unicode2String(String strUnicode) {
StringBuffer sb = new StringBuffer();
int strLen = strUnicode.length() / 4;
char[] c = strUnicode.toCharArray();
for (int i = 0; i < strLen; i++) {
String str = new String(c, i * 4, 4);
sb.append((char) Integer.parseInt(str, 16));
}
return sb.toString();
}
runshine 2008-06-27
  • 打赏
  • 举报
回复
这个不是java的unicode转义字符吧...
还有的一个有"-"号是怎么回事?

LZ你先把&#x替换程\u
也就是
string s="\u6d77\u8c22\u8c22";

输出看一看是什么.....
healer_kx 2008-06-27
  • 打赏
  • 举报
回复
显然不是UNICODE,这个很有可能是被某种方式编码过了,而且不是UTF8和URLEncode过的,看过,但是不知道。
  • 打赏
  • 举报
回复
to: tsizhao(12 楼)

应该不会抛异常啊,写错的话最多就是解不出来,也不会抛异常啊。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧