use*_*248 8 java unicode printstream
下面的代码给我Unicode字符串为கா
sysout = new PrintStream(System.out, true, "UTF-8");
sysout.println("\u0B95\u0bbe");
Run Code Online (Sandbox Code Playgroud)
通过给கா作为输入,我可以将十六进制值作为\ u0B95和\ u0bbe吗?
PS:这是泰米尔语.
根据这个你必须尝试
System.out.println( "\\u" + Integer.toHexString('?' | 0x10000).substring(1) );
Run Code Online (Sandbox Code Playgroud)
但它只适用于高达3.0的Unicode.如果你想获得更多的值,只需创建一个循环,例如
String foo = "??";
for (int i = 0; i < foo.length(); i++)
System.out.println( "\\u" + Integer.toHexString(foo.charAt(i) | 0x10000).substring(1));
Run Code Online (Sandbox Code Playgroud)
哪个产生
\u0b95
\u0bbe
Run Code Online (Sandbox Code Playgroud)
如果你想有他们在一个行中,更改System.out.println()到System.out.print()并添加System.out.print("\n")到底.
您可以使用格式功能来打印Java UTF-16字符串转义.
例如,此代码将转义写入STDOUT:
String str = "??";
for(char ch : str.toCharArray())
System.out.format("\\u%04x", (int) ch);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7761 次 |
| 最近记录: |