将 UTF-16 字符编码(数字)转换为 Java 中的字符串
Covert UTF-16 Character Code (number) to String in Java
如何简单地将 UTF-16 字符转换为字符串?
类似
String str = TheMagicalFunction(0x25E6);
您需要:
- 如果字符是整数,则将其转换为
char
。
- 放在一个1元素中
char[]
。
- 将其传递给
String
构造函数。
所以,
String str = new String(new char[] {(char) 0x25E6});
您可以使用 Character.toString(char)
:
String str = Character.toString((char) 0x25E6);
首次将字符存储在变量中时,您可以省略转换……
char whiteBullet = 0x25E6;
String whiteBulletString = Character.toString(whiteBullet);
… 或者当使用 Unicode escape 时,在这种情况下很容易,因为字符属于基本多语言平面 (BMP):
String str = Character.toString('\u25E6');
方法String.valueOf(char)
等同于and/but有多个重载。当心这个:
String str = String.valueOf(0x25E6); // "9702" (decimal value)
String str2 = String.valueOf((char) 0x25E6); // "◦"
String str3 = String.valueOf('\u25E6'); // "◦"
如何简单地将 UTF-16 字符转换为字符串?
类似
String str = TheMagicalFunction(0x25E6);
您需要:
- 如果字符是整数,则将其转换为
char
。 - 放在一个1元素中
char[]
。 - 将其传递给
String
构造函数。
所以,
String str = new String(new char[] {(char) 0x25E6});
您可以使用 Character.toString(char)
:
String str = Character.toString((char) 0x25E6);
首次将字符存储在变量中时,您可以省略转换……
char whiteBullet = 0x25E6;
String whiteBulletString = Character.toString(whiteBullet);
… 或者当使用 Unicode escape 时,在这种情况下很容易,因为字符属于基本多语言平面 (BMP):
String str = Character.toString('\u25E6');
方法String.valueOf(char)
等同于and/but有多个重载。当心这个:
String str = String.valueOf(0x25E6); // "9702" (decimal value)
String str2 = String.valueOf((char) 0x25E6); // "◦"
String str3 = String.valueOf('\u25E6'); // "◦"