java 转换 base64
时间: 2024-05-21 15:08:38 浏览: 92
在 Java 中,我们可以使用 Base64 类将字符串、图片等数据进行编码和解码。编码就是将原始数据转换为经过处理的数据,解码就是将处理后的数据转换为原始数据。
以下是将字符串编码为 Base64 的示例代码:
```
String str = "hello world";
byte[] bytes = str.getBytes("UTF-8");
String encoded = Base64.getEncoder().encodeToString(bytes);
System.out.println(encoded);
```
以下是将 Base64 编码的字符串解码为原始字符串的示例代码:
```
String encoded = "aGVsbG8gd29ybGQ=";
byte[] decoded = Base64.getDecoder().decode(encoded);
String str = new String(decoded, "UTF-8");
System.out.println(str);
```
需要注意的是,在使用 Base64 进行编码和解码时,需要指定正确的字符集。
相关问题
java 转换Base64编码的JPEG图片为数据流
可以使用Java内置的Base64类和ImageIO类来实现将Base64编码的JPEG图片转换为数据流的操作。以下是一个示例代码:
```java
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Base64;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
public class Base64ToImage {
public static void main(String[] args) throws IOException {
String base64String = "/* Base64编码的JPEG图片数据 */";
byte[] imageBytes = Base64.getDecoder().decode(base64String);
InputStream inputStream = new ByteArrayInputStream(imageBytes);
BufferedImage bufferedImage = ImageIO.read(inputStream);
// 使用 bufferedImage 进行后续操作,例如保存到本地文件
}
}
```
在上述代码中,首先对Base64编码的字符串进行解码得到字节数组 `imageBytes`,然后将其包装成一个 `ByteArrayInputStream` 对象,方便后续操作。接着使用 `ImageIO.read` 方法读取输入流并将其解码为 `BufferedImage` 对象,可以对该对象进行后续处理,例如保存到本地文件。
java base64转换
Java中的Base64转换是指将二进制数据编码为可打印的ASCII字符,或将Base64编码的ASCII字符解码为二进制数据。在Java中,可以使用java.util.Base64类来进行Base64的编码和解码操作。
要进行Base64编码,可以使用Base64类的静态方法encodeToString(),该方法接受一个字节数组作为参数,并返回对应的Base64编码字符串。例如:
```java
import java.util.Base64;
public class Base64Example {
public static void main(String[] args) {
String originalString = "Hello, World!";
byte[] originalBytes = originalString.getBytes();
String encodedString = Base64.getEncoder().encodeToString(originalBytes);
System.out.println("Encoded string: " + encodedString);
}
}
```
要进行Base64解码,可以使用Base64类的静态方法decode(),该方法接受一个Base64编码字符串作为参数,并返回对应的字节数组。例如:
```java
import java.util.Base64;
public class Base64Example {
public static void main(String[] args) {
String encodedString = "SGVsbG8sIFdvcmxkIQ==";
byte[] decodedBytes = Base64.getDecoder().decode(encodedString);
String decodedString = new String(decodedBytes);
System.out.println("Decoded string: " + decodedString);
}
}
```
阅读全文