16进制字符串转为中文
时间: 2023-08-12 20:03:24 浏览: 120
将16进制字符串转换为中文,可以使用Java中的Unicode码转换。每两个16进制字符对应一个Unicode码,我们只需要将16进制字符串每两个字符分割,然后将每个分割后的字符串转换为对应的Unicode字符,再拼接成最终的中文字符串。
示例代码如下:
```java
public static String hexToChinese(String hex) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hex.length(); i += 2) {
String s = hex.substring(i, i + 2);
char c = (char) Integer.parseInt(s, 16);
sb.append(c);
}
return sb.toString();
}
```
在示例代码中,我们首先将16进制字符串每两个字符分割,然后将每个分割后的字符串转换为对应的Unicode字符,最后将Unicode字符拼接得到最终的中文字符串。
示例:
```java
String hexStr = "4e2d6587"; // 中文的16进制字符串
String chineseStr = hexToChinese(hexStr); // 转换为中文字符串
System.out.println(chineseStr); // 输出:中文
```
需要注意的是,如果16进制字符串中有非法字符,或者长度不是偶数,都会导致转换失败。因此在实际使用中需要进行参数校验。
阅读全文