我需要将字符unicode转换为byte []表示并保存到Srting中,例如
U+1F601 -> \xF0\x9F\x98\x81
我不知道我怎么能这样做.. 有人有想法吗?谢谢
答案 0 :(得分:1)
int[] codepoints = { 0x1F601 }; // U+1F601
String s = new String(codepoints, 0, codepoints.length);
byte[] bytes = s.getBytes(StandardCharsets.UTF_8); // As UTF-8 (Unicode) bytes
System.out.println(Arrays.toString(bytes));
因此,首先将Unicode代码点放入java String中。 Java字符串包含Unicode。 当需要字节时,比如UTF-8(Unicode表示),那么必须指出字节所在的CharSet。