杰瑞科技汇

Java字符串如何转成JSON对象?

在Java中将字符串转换为JSON对象

在Java中,将字符串转换为JSON对象通常需要使用JSON处理库,以下是几种常用的方法:

Java字符串如何转成JSON对象?-图1
(图片来源网络,侵删)

使用Gson库(Google)

import com.google.gson.Gson;
import com.google.gson.JsonObject;
public class StringToJson {
    public static void main(String[] args) {
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
        Gson gson = new Gson();
        JsonObject jsonObject = gson.fromJson(jsonString, JsonObject.class);
        System.out.println(jsonObject.get("name")); // 输出: "John"
    }
}

使用Jackson库

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
public class StringToJson {
    public static void main(String[] args) {
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
        ObjectMapper mapper = new ObjectMapper();
        try {
            JsonNode jsonNode = mapper.readTree(jsonString);
            System.out.println(jsonNode.get("name").asText()); // 输出: John
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

使用org.json库

import org.json.JSONObject;
public class StringToJson {
    public static void main(String[] args) {
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
        JSONObject jsonObject = new JSONObject(jsonString);
        System.out.println(jsonObject.getString("name")); // 输出: John
    }
}

使用Java内置的javax.json(Java EE)

import javax.json.JsonObject;
import javax.json.JsonReader;
public class StringToJson {
    public static void main(String[] args) {
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";
        try (JsonReader reader = Json.createReader(new StringReader(jsonString))) {
            JsonObject jsonObject = reader.readObject();
            System.out.println(jsonObject.getString("name")); // 输出: John
        }
    }
}

注意事项

  1. 确保添加相应的JSON库依赖到你的项目中

    • Gson: implementation 'com.google.code.gson:gson:2.8.9'
    • Jackson: implementation 'com.fasterxml.jackson.core:jackson-databind:2.13.0'
    • org.json: implementation 'org.json:json:20250307'
  2. 处理可能的JSON解析异常,如JsonSyntaxExceptionJSONException

  3. 如果JSON字符串格式不正确,这些库会抛出异常,需要适当处理

  4. 对于复杂的JSON结构,可能需要创建对应的Java类来映射JSON数据

    Java字符串如何转成JSON对象?-图2
    (图片来源网络,侵删)

选择哪种方法取决于你的项目需求和已使用的库,Gson和Jackson是最常用的选择,功能强大且社区支持良好。

Java字符串如何转成JSON对象?-图3
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇