【问题标题】:Read JSON data with Java-based Processing language使用基于 Java 的处理语言读取 JSON 数据
【发布时间】:2017-11-08 12:38:43
【问题描述】:

我正在使用Processing language 读取一个 json 文件,对其进行解析,并将一些值存储在本地对象中。但是,我的问题是当我不知道键时如何读取值。 例如:当我提供密钥时,我可以这样阅读:

String[] Keys ={"key1","key2"};
JSONArray json = loadJSONArray(filename);
int noItems = json.size();  
JSONArray[] list = new JSONArray[noItems];
list[i] = json.getJSONArray(Keys[i]);

但是,由于我不能总是知道密钥,我希望能够读取数据。 由于处理语言是基于 Java 的,所以我尝试使用迭代器来遍历文件,但是我收到一个编译器错误,提示无法将对象转换为迭代器。到目前为止,这些是我不成功的尝试:

import java.util.Iterator;
...
Iterator<String> keys= json.iterator().keys();
Iterator i = json.iterator();
Iterator<?> keys = json.values();

谁能帮我找到一种有效/动态的方式来使用这种语言读取 json 文件?

【问题讨论】:

    标签: java json processing


    【解决方案1】:

    this documentation reference 中说有两种方法可以产生:

    选择你想要的,祝你好运。

    【讨论】:

      【解决方案2】:

      根据答案,这是读取和解析 json 文件的简单方法:

        json = loadJSONObject(filename);
        JSONObject o = (JSONObject) json;   
      
        Set keyset = o.keys();
        Iterator<String> keys = keyset.iterator();
      
        while( keys.hasNext() ) {    
            String key = (String)keys.next();
            JSONArray newlist = o.getJSONArray(key);
        }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-05-27
        • 1970-01-01
        • 2012-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多