有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java解析JSON文档

实际上,我正在努力解析以下JSON文档:LINK

我有一个类,它将内容保存在字符串(rawData)中。之后,我想用Gson解析它

DownloadedCategories dcats = new Gson().fromJson(rawData, DownloadedCategories.class);

我的目标是有一个21个主要类别的额外数据类型列表,并在另一个列表中保存子类别的额外数据类型

我的方法是创建新的数据类型mainCategory,其中包括子类别列表

问题是我不能这样做DownloadedCategories类:

public class DownloadedCategories
{
    private List<mainCategories> categories;

    public List<mainCategories> getCategories;
    {
        return categories;
    }
}

有人知道如何解决我的问题吗


共 (1) 个答案

  1. # 1 楼答案

    看起来链接中的Json格式不适合对象

    由于要解析对象中的Json数组,您需要知道将把类别放在哪个属性中。在您下载的类别中,属性为类别。因此,您需要将Json封装在属性categories

        String wellFolrmedJson = "{\"categories\": " + rawData + "}";
        DownloadedCategories dcats = new Gson().fromJson(wellFolrmedJson , DownloadedCategories.class);
    

    Gson将绑定对象列表中的json数组

    解析数据的最佳方法是使用数组作为起始点,如example

    mainCategories[] dcats = new Gson().fromJson(rawData , mainCategories[].class);