如何在Java中编写Unicode交叉符号?

我正在尝试编写此 Unicode 十字符号 (


答案 1

您正在寻找 U+10035,它位于基本多语言平面之外。这意味着您不能用于指定值,因为它仅处理 U+0000 到 U+FFFF - 之后始终有四个十六进制数字。所以目前你有U + 1003(“MYANMAR LETTER GHA”)后跟“5”。\u\u

不幸的是,Java没有提供字符串文本形式,这使得BMP之外的字符易于表达。将其包含在文本中(但仍以 ASCII 形式)的唯一方法是使用 UTF-16 代理项对形式:

String cross = "\ud800\udc35";

或者,您可以使用 32 位码位表单作为:int

String cross = new String(new int[] { 0x10035 }, 0, 1);

(这两个字符串相等。

话虽如此,您的控制台仍然需要支持该角色 - 您需要尝试一下以确定它是否支持。


答案 2

我相信Java表示从到的Unicode字符。Java将评估为任何东西,之后是5。0x00000xFFFF"\u10035""\u1003"


推荐