【发布时间】:2011-04-06 12:56:19
【问题描述】:
我想知道 Java 中是否有与 C++ 中类似的十六进制 (\x) 转义。 例如:
char helloworld[] = "\x48\x45\x4C\x4C\x4F\x20\x57\x47\x52\x4C\x44";
printf("%s", helloworld);
到目前为止,Java 中没有任何十六进制 (\x) 转义。有没有一种无需将一堆十六进制数字连接在一起即可轻松使用的替代方法?
【问题讨论】:
我想知道 Java 中是否有与 C++ 中类似的十六进制 (\x) 转义。 例如:
char helloworld[] = "\x48\x45\x4C\x4C\x4F\x20\x57\x47\x52\x4C\x44";
printf("%s", helloworld);
到目前为止,Java 中没有任何十六进制 (\x) 转义。有没有一种无需将一堆十六进制数字连接在一起即可轻松使用的替代方法?
【问题讨论】:
Java 中的字符串始终以 UTF-16 编码,因此它使用 Unicode 转义符:\u0048。也支持八进制字符:\110
【讨论】:
请注意,Unicode 转义很早就被解析了。当
String s = "text\u000d\u000a";
导致编译器错误,因为您应该使用 "text\015\012" 或 "text\r\n"
【讨论】: