我有一个需要使用组分隔符分隔的字符串,十六进制为“ 0x1E”。
示例:
String notFinalized = HelloGuys
String finalized = Hello Guys // here, the delimiter should be 0x1E
我该怎么做?我尝试了Character.toString("0x1E")
,但是没有用。
我的想法是将0x1E转换为String,将其放入变量中,然后将该变量与finalized
字符串连接。
答案 0 :(得分:2)
在Java中,一个char可以看作是一个字节。您可以通过可读的方式声明它:char a = '!'
或值char a = 27
或十六进制char a = 0x1E
之后,您可以使用某些String方法(例如replace或idk)将char添加到String中
char a = 0x1E;
String str = "test";
System.out.println(str.replaceAll('t', Character.toString(a));
编辑:在这种情况下,请使用Character.toString()
方法,因为replaceAll()
需要String而不是char作为参数。 Character.toString()
使用可读值将您的char转换为String。
编辑2:正如汤姆·布洛杰特(Tom Blodget)在评论中提到的:/!\字符不是字节!我写了“可以看作是字节”的意思是:“它只包含一个数字值,就像字节一样,因此您可以在给字节定义数字的同时定义一个字符”。但实际上,字符从\u0000
到\uFFFF
并以2字节编码。