如何读取 java 或 android 中的 unicode "\u1f40d"?

How to read unicode "\u1f40d" in java or android?

我最近在尝试挖掘一些东西。

我可以在 java 或 android 中读取“\u1f40d”吗?

我这样试过

BufferedReader rd = new BufferedReader(new InputStreamReader(new ByteArrayInputStream("\u1f40d".getBytes()), "utf-8"));
utf8 = rd.readLine(); 

但是结果是

ὀd

我希望结果是(这是一条蛇表情。http://chars.suikawiki.org/string?s=%F0%9F%90%8D

这个特殊字符在IE或者MacChrome,Safari中都可以看到(在我的WindowChrome中看不到)

请帮帮我

假设我有这个字符串 -

String myString = "\u0048\u0065\u006C\u006C\u006F World";

我想转换它,然后您可以通过 -

以编程方式执行此操作
String str = myString.split(" ")[0];
str = str.replace("\","");
String[] arr = str.split("u");
String text = "";
for(int i = 1; i < arr.length; i++){
    int hexVal = Integer.parseInt(arr[i], 16);
    text += (char)hexVal;
}
// Text will now have Hello

干杯:)

试试这个

int codePoint = Integer.parseInt("1f40d", 16 ); // it will be 128013
System.out.println(new String(new int[]{codePoint}, 0, 1));

问题是 \uXXXX 表示法用于 16 位 char,有 4 个十六进制数字。 216

以上的Unicode代码点
int codePoint = 0x1f40d;
System.out.println(new String(new int[] {codePoint}, 0, 1));