我想通过以下方式将char转换为String:
char aaa = '\uE001';
我想获取值为"\uE001"
的字符串,因此我可以使用substring(2)
仅获取"E001"
。那可能吗?请帮忙
答案 0 :(得分:7)
嗯,角色本身是单个字符,U + E001。它的十六进制值为0xE001。如果您希望该值为整数,请使用:
int unicodeValue = aaa;
然后,如果您确实需要,可以通过各种方式将该整数值转换为十六进制,例如:
String hex = Integer.toString(unicodeValue, 16);
(假设java-me上有重载。)
...或Integer.toHexString
如果可用但Integer.toString(int, int)
不可用。
为什么你想要这个值呢?如果您能澄清一下,我们可能会给您更多有用的建议。
答案 1 :(得分:1)
Integer.toHexString((int)aaa) ;
..并且不需要子串()。
答案 2 :(得分:1)
这很简单
char aaa ='\ uE001';
String s = String.valueOf(aaa);
答案 3 :(得分:0)
你可以取任何整数值并从中创建一个十六进制字符串,如下所示:
String s = Integer.toHexString(num);
所以Jon Skeet走在了正确的轨道上。你可以:
char aaa = '\uE001';
int num = aaa;
String hex = Integer.toHexString(num); //now contains "e001"