3

我想在屏幕上打印一个带有 5 个十六进制数字的 Unicode 字符(例如,将它写在 Windows 窗体按钮上)。

例如,字符 Ace Heart 的 Unicode 是 1F0B1。我试过了,\x但它最多可以显示 4 位数字。

4

1 回答 1

10

您可以使用\U转义序列:

string text = "Ace of hearts: \U0001f0b1";

当然,您必须使用支持该字符的字体...

顺便说一句,我强烈建议避免使用\x转义序列,因为它们很难阅读。例如:

string good = "Bell: \x7Good compiler";
string bad = "Bell: \x7Bad compiler";

当一起出现时,乍一看,它们似乎都是“Bell:”,后跟 U+0007,后跟“Good compiler”或“Bad”编译器……但因为“Bad”完全由有效的十六进制字符组成, 第二个字符串实际上是 "Bell:" 后跟 U+7BAD 后跟 "compiler"。

于 2013-10-18T08:49:34.590 回答