Java 字符串 Base64 编码与解码235


Base64 是一种二进制到文本的编码方案,它将二进制数据转换为一组可打印的 ASCII 字符。在 Java 中,可以通过使用 `.Base64` 类轻松地对字符串进行 Base64 编码和解码。

编码

要对字符串进行 Base64 编码,可以使用 `encodeBase64()` 方法。该方法将字符串转换为 Byte 数组,然后将其编码为 Base64 字符串。例如:```java
String originalString = "Hello, world!";
String encodedString = ().encodeToString(());
(encodedString);
```

输出:```
SGVsbG8sIHdvcmxkIQ==
```

解码

要对 Base64 编码的字符串进行解码,可以使用 `decodeBase64()` 方法。该方法将 Base64 字符串解码为 Byte 数组,然后将其转换为字符串。例如:```java
String decodedString = new String(().decode(encodedString));
(decodedString);
```

输出:```
Hello, world!
```

URL 安全 Base64 编码

除了标准的 Base64 编码外,Java 还提供了 URL 安全的 Base64 编码。URL 安全 Base64 编码不会在编码后的字符串中使用字符 `+` 和 `/`,因为这些字符在某些 URL 中是不允许的。要使用 URL 安全 Base64 编码,可以使用 `getUrlEncoder()` 和 `getUrlDecoder()` 方法。例如:```java
String urlSafeEncodedString = ().encodeToString(());
(urlSafeEncodedString);
```

输出:```
SGVsbG8sIHdvcmxkIQ==
```

高级用法

`Base64` 类还提供了一些高级用法,例如:* 自定义换行符:可以使用 `setLineSeparator()` 方法设置自定义的换行符来格式化编码后的字符串。
* 自定义字母表:可以使用 `setAlphabet()` 方法设置自定义的 Base64 字母表。
* 编码/解码块:可以使用 `encodeBase64Chunked()` 和 `decodeBase64Chunked()` 方法以块的形式进行编码/解码,这对于处理大数据集非常有用。

Fazit

Java 中的 `Base64` 类提供了对字符串进行 Base64 编码和解码的强大功能。通过使用 `encodeBase64()` 和 `decodeBase64()` 方法,可以轻松地将二进制数据转换为可打印的字符串,反之亦然。`Base64` 编码在许多场景中有用,例如数据传输、安全存储和 URL 编码。

2024-11-18


上一篇:Java 数组中的 foreach 循环

下一篇:Java 权限管理代码