java 16进制转字符串
时间: 2023-07-06 18:40:37 浏览: 51
可以使用 Java 中的 `String` 类的 `valueOf()` 方法和 `Integer` 类的 `parseInt()` 方法来进行 16 进制和字符串之间的转换。
将 16 进制字符串转换为字符串:
```java
String hexStr = "68656c6c6f"; // 16 进制字符串
String str = "";
for (int i = 0; i < hexStr.length(); i += 2) {
String s = hexStr.substring(i, i + 2);
int decimal = Integer.parseInt(s, 16);
str += (char) decimal;
}
System.out.println(str); // 输出 "hello"
```
将字符串转换为 16 进制字符串:
```java
String str = "hello"; // 字符串
String hexStr = "";
for (int i = 0; i < str.length(); i++) {
int decimal = (int) str.charAt(i);
hexStr += Integer.toHexString(decimal);
}
System.out.println(hexStr); // 输出 "68656c6c6f"
```
相关问题
java16进制转字符串
可以使用 Integer 类的静态方法 parseInt() 将 16 进制字符串转换为整数,然后使用 Character 类的静态方法 toString() 将整数转换为对应的字符。示例代码如下:
String hexString = "68656c6c6f"; // 16 进制字符串
int intValue = Integer.parseInt(hexString, 16); // 将 16 进制字符串转换为整数
String stringValue = Character.toString((char) intValue); // 将整数转换为对应的字符
System.out.println(stringValue); // 输出 "hello"
java 16进制转成字符串_java 16进制转成字符串
可以使用Java的内置方法将16进制字符串转换为字符串。具体步骤如下:
1. 将16进制字符串按照两个字符一组分割成字符串数组。
2. 将每个字符串转换为对应的16进制数。
3. 将每两个16进制数合并成一个字节(byte)。
4. 将所有字节合并成一个字节数组(byte[])。
5. 将字节数组转换为字符串。
下面是Java代码实现:
```java
public static String hexToString(String hex) {
String[] hexArray = hex.split("(?<=\\G.{2})");
byte[] bytes = new byte[hexArray.length];
for (int i = 0; i < hexArray.length; i++) {
bytes[i] = (byte) Integer.parseInt(hexArray[i], 16);
}
return new String(bytes, StandardCharsets.UTF_8);
}
```
其中,`hex`是要转换的16进制字符串,返回值是转换后的字符串。
例如,如果要将16进制字符串`48656c6c6f20576f726c64`转换为字符串,可以调用上述方法:
```java
String str = hexToString("48656c6c6f20576f726c64");
System.out.println(str); // Hello World
```