Java 将JSON字符串反序列化为字符串数组

Java 将JSON字符串反序列化为字符串数组,java,json,Java,Json,如何获取该字符串并将其放入字符串数组或HashMap?有参考资料吗 { "code" : 403, "errors" : [ { "domain" : "global", "location" : "Authorization", "locationType" : "header", "message" : "The d

如何获取该字符串并将其放入字符串数组或HashMap?有参考资料吗

     {
        "code" : 403,
            "errors" : [ {
                "domain" : "global",
                "location" : "Authorization",
                "locationType" : "header",
                "message" : "The domain policy has disabled third-party Drive apps",
                "reason" : "domainPolicy"
            } ],
        "message" : "The domain policy has disabled third-party Drive apps"
     }
====

这是我对Jackson的解决方案:

public class TheErrorModel {
    public int code; 
    public Collection<Error> errors; 
    public String message;

    public TheErrorModel() {
    }

    public TheErrorModel(String json) 
            throws Exception {
        ObjectMapper mapper = new ObjectMapper();
        TheErrorModelother = mapper.readValue(json, TheErrorModel.class);

        this.code = other.code;
        this.errors = other.errors;
        this.message = other.message;
    }
}

class Error {
    public String domain;
    public String location;
    public String locationType; 
    public String message;
    public String reason;
}

TheErrorModel theErrorModel = new TheErrorModel(json);
public类错误模型{
公共整数码;
公开收集错误;
公共字符串消息;
公共错误模型(){
}
公共错误模型(字符串json)
抛出异常{
ObjectMapper mapper=新的ObjectMapper();
TheErrorModelother=mapper.readValue(json,TheErrorModel.class);
this.code=other.code;
this.errors=other.errors;
this.message=other.message;
}
}
类错误{
公共字符串域;
公共字符串位置;
公共字符串位置类型;
公共字符串消息;
公共字符串原因;
}
TheErrorModel TheErrorModel=新的ErrorModel(json);
所以我得到了类似于错误模型的东西。消息:D

试试这个:

JSONObject yourObj = JSONObject.fromString(input_string);
String code = yourObj.get("code"); // code will have a value 403
试试这个:

JSONObject yourObj = JSONObject.fromString(input_string);
String code = yourObj.get("code"); // code will have a value 403
您可以尝试使用GSON,它使用起来非常简单。您应该只为这个json模式创建类结构

import com.google.gson.Gson;
class YourErrorsJSON{
  private String domain 
  private String location;
  private String locationType; 
  private String message; 
  private String reason 
}

class YourJSON {
  private int code; 
  private YourErrorsJSON[] errors; 
  private String message;
}
Gson gson = new Gson();
YourJSON obj = gson.fromJson(json, YourJSON.class);
您可以尝试使用GSON,它使用起来非常简单。您应该只为这个json模式创建类结构

import com.google.gson.Gson;
class YourErrorsJSON{
  private String domain 
  private String location;
  private String locationType; 
  private String message; 
  private String reason 
}

class YourJSON {
  private int code; 
  private YourErrorsJSON[] errors; 
  private String message;
}
Gson gson = new Gson();
YourJSON obj = gson.fromJson(json, YourJSON.class);

网上有很多图书馆。你试过了吗?我有杰克逊,但我不知道用它的主意是什么:/网上有很多的LIB。你试过吗?我有Jackson,但我不知道使用它的想法是什么:/JSONObject的库是什么?json.JSONObject?您只需要包括::import net.sf.json.JSONArray;导入net.sf.json.JSONObject;:/我没有那个图书馆。。。让我先看看杰克逊能提供什么。谢谢JSONObject的库是什么?json.JSONObject?您只需要包括::import net.sf.json.JSONArray;导入net.sf.json.JSONObject;:/我没有那个图书馆。。。让我先看看杰克逊能提供什么。谢谢,这个消息只是一个错误,我不确定作者是否真的想解析它。也许只是错误的子字符串就足够了。顺便说一句,这条消息只是一个错误,我不确定作者是否真的想解析它。也许仅仅用子字符串表示错误就足够了。