Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何通过Gson解析单个字段_Java_Android_Gson - Fatal编程技术网

Java 如何通过Gson解析单个字段

Java 如何通过Gson解析单个字段,java,android,gson,Java,Android,Gson,我有这个JSON [ {"Description":"When settir\n"} ] 我的容器类是 class MessageContainer { private String Description; public String getDescription() { return Description; } public void setDescription(String description) {

我有这个JSON

[
  {"Description":"When settir\n"}
]
我的容器类是

    class MessageContainer 
{

    private String Description;

    public String getDescription() {
        return Description;
    }

    public void setDescription(String description) {
        Description = description;
    }

}
当我使用

MessageContainer container = mGson.fromJson(result, MessageContainer.class);
异常读取预期的BEGIN对象,但找到字符串

有人知道什么给你吗

[
  {"Description":"When settir\n"}
]
这用于数组列表

{"Description":"When settir\n"}
这是一个简单的对象

public static void main(String[] args) {
    MessageContainer m = new MessageContainer();
    m.setDescription("When settir\n");
    ArrayList<MessageContainer> list = new ArrayList<MessageContainer>();
    list.add(m);
    System.out.println(new Gson().toJson(list));
    String json = new Gson().toJson(list);
    ArrayList<MessageContainer>  resultList = new Gson().fromJson(json, new TypeToken<ArrayList<MessageContainer>>() {}.getType());
}
publicstaticvoidmain(字符串[]args){
MessageContainer m=newmessagecontainer();
m、 setDescription(“当settir\n时”);
ArrayList=新建ArrayList();
增加(m);
System.out.println(新的Gson().toJson(list));
字符串json=new Gson().toJson(列表);
ArrayList resultList=new Gson().fromJson(json,new TypeToken(){}.getType());
}
这用于数组列表

{"Description":"When settir\n"}
这是一个简单的对象

public static void main(String[] args) {
    MessageContainer m = new MessageContainer();
    m.setDescription("When settir\n");
    ArrayList<MessageContainer> list = new ArrayList<MessageContainer>();
    list.add(m);
    System.out.println(new Gson().toJson(list));
    String json = new Gson().toJson(list);
    ArrayList<MessageContainer>  resultList = new Gson().fromJson(json, new TypeToken<ArrayList<MessageContainer>>() {}.getType());
}
publicstaticvoidmain(字符串[]args){
MessageContainer m=newmessagecontainer();
m、 setDescription(“当settir\n时”);
ArrayList=新建ArrayList();
增加(m);
System.out.println(新的Gson().toJson(list));
字符串json=new Gson().toJson(列表);
ArrayList resultList=new Gson().fromJson(json,new TypeToken(){}.getType());
}
这用于数组列表

{"Description":"When settir\n"}
这是一个简单的对象

public static void main(String[] args) {
    MessageContainer m = new MessageContainer();
    m.setDescription("When settir\n");
    ArrayList<MessageContainer> list = new ArrayList<MessageContainer>();
    list.add(m);
    System.out.println(new Gson().toJson(list));
    String json = new Gson().toJson(list);
    ArrayList<MessageContainer>  resultList = new Gson().fromJson(json, new TypeToken<ArrayList<MessageContainer>>() {}.getType());
}
publicstaticvoidmain(字符串[]args){
MessageContainer m=newmessagecontainer();
m、 setDescription(“当settir\n时”);
ArrayList=新建ArrayList();
增加(m);
System.out.println(新的Gson().toJson(list));
字符串json=new Gson().toJson(列表);
ArrayList resultList=new Gson().fromJson(json,new TypeToken(){}.getType());
}
这用于数组列表

{"Description":"When settir\n"}
这是一个简单的对象

public static void main(String[] args) {
    MessageContainer m = new MessageContainer();
    m.setDescription("When settir\n");
    ArrayList<MessageContainer> list = new ArrayList<MessageContainer>();
    list.add(m);
    System.out.println(new Gson().toJson(list));
    String json = new Gson().toJson(list);
    ArrayList<MessageContainer>  resultList = new Gson().fromJson(json, new TypeToken<ArrayList<MessageContainer>>() {}.getType());
}
publicstaticvoidmain(字符串[]args){
MessageContainer m=newmessagecontainer();
m、 setDescription(“当settir\n时”);
ArrayList=新建ArrayList();
增加(m);
System.out.println(新的Gson().toJson(list));
字符串json=new Gson().toJson(列表);
ArrayList resultList=new Gson().fromJson(json,new TypeToken(){}.getType());
}

因为它是
MessageContainer
的数组,而不是单个
MessageContainer
实例

因此,您的
fromJson
应该是

Type type = new TypeToken<List<MessageContainer>>(){}.getType();
List<MessageContainer> container = new Gson().fromJson(json, type);
Type Type=new-TypeToken(){}.getType();
List container=new Gson().fromJson(json,类型);

因为它是
MessageContainer
的数组,而不是单个
MessageContainer
实例

因此,您的
fromJson
应该是

Type type = new TypeToken<List<MessageContainer>>(){}.getType();
List<MessageContainer> container = new Gson().fromJson(json, type);
Type Type=new-TypeToken(){}.getType();
List container=new Gson().fromJson(json,类型);

因为它是
MessageContainer
的数组,而不是单个
MessageContainer
实例

因此,您的
fromJson
应该是

Type type = new TypeToken<List<MessageContainer>>(){}.getType();
List<MessageContainer> container = new Gson().fromJson(json, type);
Type Type=new-TypeToken(){}.getType();
List container=new Gson().fromJson(json,类型);

因为它是
MessageContainer
的数组,而不是单个
MessageContainer
实例

因此,您的
fromJson
应该是

Type type = new TypeToken<List<MessageContainer>>(){}.getType();
List<MessageContainer> container = new Gson().fromJson(json, type);
Type Type=new-TypeToken(){}.getType();
List container=new Gson().fromJson(json,类型);