The code below gives me the Unicode string as கா
sysout = new PrintStream(System.out, true, "UTF-8");
sysout.println("\u0B95\u0bbe");
By giving கா as input, can I get the hex values as \u0B95 and \u0bbe?
PS: This is Tamil language.
You can use the format functionality to print the Java UTF-16 string escapes.
For example, this code writes the escapes to STDOUT:
String str = "கா";
for(char ch : str.toCharArray())
System.out.format("\\u%04x", (int) ch);
According to this you'll have to try
System.out.println( "\\u" + Integer.toHexString('க' | 0x10000).substring(1) );
but it will only work on Unicode up to 3.0. If you want to get more values, just create a loop, e.g.
String foo = "கா";
for (int i = 0; i < foo.length(); i++)
System.out.println( "\\u" + Integer.toHexString(foo.charAt(i) | 0x10000).substring(1));
which produces
\u0b95
\u0bbe
If you want to have them in one line, change System.out.println()
to System.out.print()
and add System.out.print("\n")
in the end.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With