Java 中字符串 转byte数组
时间: 2023-08-09 14:07:12 浏览: 139
要将Java中的字符串转换为byte数组,可以使用String类的getBytes()方法。该方法将字符串转换为对应的字节数组,并使用平台的默认字符集编码。
示例代码:
```java
String str = "Hello, World!";
byte[] byteArray = str.getBytes();
for (byte b : byteArray) {
System.out.print(b + " ");
}
// 输出:72 101 108 108 111 44 32 87 111 114 108 100 33
```
在上述示例中,我们将字符串"Hello, World!"转换为对应的byte数组。然后,我们遍历byte数组并打印每个字节的值。注意,默认情况下使用的是平台的默认字符集编码,可以通过getBytes()方法的重载版本来指定使用特定的字符集编码。
例如,如果要使用UTF-8编码将字符串转换为byte数组,可以这样做:
```java
String str = "你好,世界!";
byte[] byteArray = str.getBytes(StandardCharsets.UTF_8);
```
相关问题
Java字符串转byte数组
Java中字符串转换为byte数组的方法有多种,以下是两种常用的方法:
方法一:使用getBytes()方法
```java
String str = "Hello World";
byte[] byteArray = str.getBytes();
```
方法二:使用String的toCharArray()方法和Character的getNumericValue()方法
```java
String str = "Hello World";
char[] charArray = str.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i = 0; i < charArray.length; i++) {
byteArray[i] = (byte) Character.getNumericValue(charArray[i]);
}
```
这两种方法都可以将字符串转换为对应的byte数组。第一种方法使用了String类的getBytes()方法,该方法将字符串转换为字节数组,使用的是默认的字符编码。第二种方法先将字符串转换为字符数组,然后通过Character类的getNumericValue()方法将每个字符转换为对应的数值,最后将数值转换为byte类型。
java 16进制字符串转byte数组
可以使用以下代码将Java中的16进制字符串转换为byte数组:
```java
public static byte[] hexStringToByteArray(String hexString) {
int len = hexString.length();
byte[] data = new byte[len / 2];
for (int i = 0; i < len; i += 2) {
data[i / 2] = (byte) ((Character.digit(hexString.charAt(i), 16) << 4)
+ Character.digit(hexString.charAt(i+1), 16));
}
return data;
}
```
调用示例:
```java
String hexString = "48656c6c6f20576f726c64";
byte[] byteArray = hexStringToByteArray(hexString);
```
阅读全文