java json转base64
时间: 2023-11-16 09:06:08 浏览: 261
Java中将JSON转换为Base64编码可以使用Base64类的静态方法,具体步骤如下:
1. 将JSON对象或字符串转换为字节数组。
2. 使用Base64类的静态方法encodeToString()将字节数组转换为Base64编码字符串。
下面是一个示例代码:
```
import java.util.Base64;
import org.json.JSONObject;
public class JsonToBase64 {
public static void main(String[] args) {
JSONObject json = new JSONObject();
json.put("name", "John");
json.put("age", 30);
byte[] bytes = json.toString().getBytes();
String base64 = Base64.getEncoder().encodeToString(bytes);
System.out.println(base64);
}
}
```
输出结果为:
```
eyJhZ2UiOjMwLCJuYW1lIjoiSm9obiJ9
```
如果需要将Base64编码字符串转换为JSON对象或字符串,可以使用Base64类的静态方法decode()将Base64编码字符串解码为字节数组,然后将字节数组转换为JSON对象或字符串。
相关问题
java json base64 互转
在Java中,JSON (JavaScript Object Notation) 和 Base64 是两种常见的数据交换格式。Base64是一种编码方式,用于将二进制数据转换成文本形式,以便在网络上传输或者存储非ASCII字符。
**Base64编码JSON:**
如果你想将JSON字符串转换为Base64,可以使用Java的`java.util.Base64`类。首先,你需要将JSON字符串转换为字节数组,然后使用`Base64.getEncoder()`创建编码器并编码:
```java
import java.nio.charset.StandardCharsets;
import java.util.Base64;
String jsonString = "{\"key\":\"value\"}";
byte[] jsonDataBytes = jsonString.getBytes(StandardCharsets.UTF_8);
String encodedJson = Base64.getEncoder().encodeToString(jsonDataBytes);
```
**Base64解码到JSON:**
反之,若你想从Base64字符串解码回JSON,可以先使用`Base64.getDecoder()`解码,再转换回字符串:
```java
byte[] decodedBytes = Base64.getDecoder().decode(encodedJson);
String decodedJson = new String(decodedBytes, StandardCharsets.UTF_8);
```
java中将json转成base64码
可以使用Java中的Base64类将JSON字符串转换为Base64编码的字符串。以下是一个简单的例子:
```java
import java.util.Base64;
String jsonString = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";
String base64String = Base64.getEncoder().encodeToString(jsonString.getBytes());
System.out.println("Base64 encoded string: " + base64String);
```
这里的`jsonString`是一个包含JSON数据的字符串。使用`Base64.getEncoder()`获取Base64编码器实例,然后调用`encodeToString()`方法将JSON字符串转换为Base64编码的字符串。
需要注意的是,Java 8及以上版本才有`java.util.Base64`类。如果使用的是Java 7及以下版本,可以使用其他第三方库来实现Base64编码的转换。
阅读全文