Java:如何获取字符的 Unicode 名称(或其类型类别)?

2022-09-02 20:56:59

Java 中的 Character 类定义了检查给定参数是否与某些 Unicode 字符相等或是否属于某个类型类别的方法。这些字符和类型类别已命名。char

如给定的javadoc所述,命名字符的示例是
, , ...;
命名类型类别的示例包括
, , ...HORIZONTAL TABULATIONFORM FEEDSPACE_SEPARATORPARAGRAPH_SEPARATOR

但是,对于存在或值而不是枚举,这些类型的名称在运行时是“隐藏的”。byteint

那么,是否有可能在运行时获取字符和/或类型类别的名称?


答案 1

JDK7将有一个

String getName(int codepoint)

函数(READ:java.lang.Character类中的“静态方法”),它将代码点转换为其官方Unicode名称。

Javadoc : http://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#getName%28int%29


答案 2

是的。使用 ICU4J 库。它有一个完整的ucd和一个API来摆脱它。