如何将 Java 字符串转换为字节数组18


在 Java 中,字符串和字节数组是两种不同的数据类型。字符串由 Unicode 字符组成,而字节数组由原始字节组成。为了在这些数据类型之间进行转换,Java 提供了专门的方法。

使用 `getBytes()` 方法

将 Java 字符串转换为字节数组最简单的方法是使用 getBytes() 方法。此方法返回一个包含字符串中每个字符的 Unicode 编码的字节数组。例如:```java
String str = "Hello World";
byte[] bytes = ();
```

bytes 数组现在包含字符串中每个字符的字节表示。我们可以通过使用以下代码将这些字节打印到控制台中:```java
for (byte b : bytes) {
(b);
}
```

将输出以下字符的 Unicode 编码值:```
72
101
108
108
111
32
87
111
114
108
100
```

指定字符集

getBytes() 方法使用默认字符集转换字符串。在某些情况下,您可能希望指定特定的字符集。您可以通过将字符集名称作为参数传递给 getBytes() 方法来实现此目的。例如,要使用 UTF-8 字符集转换字符串,您可以使用以下代码:```java
String str = "Hello World";
byte[] bytes = ("UTF-8");
```

使用编码器

另一种将 Java 字符串转换为字节数组的方法是使用编码器。编码器是一种将字符转换为字节的转换器。Java 提供了几个内置编码器,例如 UTF-8、UTF-16 和 US-ASCII。要使用编码器转换字符串,您可以使用以下步骤:1. 创建编码器:
```java
Charset charset = ("UTF-8");
```
2. 创建编码器:
```java
CharsetEncoder encoder = ();
```
3. 将字符串转换为字节数组:
```java
byte[] bytes = (str).array();
```

将字节数组转换为字符串

除了将字符串转换为字节数组外,您还可能需要执行相反的操作。Java 提供了 String(byte[]) 构造函数,允许您从字节数组创建字符串。例如:```java
String str = new String(bytes);
```

str 变量现在将包含字节数组中字节的字符串表示。

将 Java 字符串转换为字节数组是一个常见任务,有几种方法可以实现。最简单的方法是使用 getBytes() 方法,但是您也可以使用编码器指定特定的字符集。如果您需要从字节数组创建字符串,可以使用 String(byte[]) 构造函数。

2024-10-20


上一篇:Java Swing 界面编程详解

下一篇:双向转换:Java 中的字符串和字符数组