java - 使用 json.simple 动态获取对象列表

标签 java json

经过搜索并尝试了很多例子后才询问。 我正在尝试从 json 动态获取值列表,以便插入到 array 中。

json 看起来像:

{
"Test_name":"mft",
"parameters":[ 
{
"Remotehost":"vl-tlv-ctm-qa22",
"Ftptype":"sftp",
"file_name":"blabla.txt"
}
]
}

我正在使用以下代码:

JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("c:/temp/test.txt"));
JSONObject jsonObject = (JSONObject) obj;
String testname = (String) jsonObject.get("Test_name");
System.out.println(testname)
JSONArray msg = (JSONArray) jsonObject.get("parameters");
Iterator<JSONObject> iterator = msg.iterator();
while (iterator.hasNext()) {
JSONObject factObj = (JSONObject) iterator.next();
System.out.println(factObj);

输出是:

mft
{"Remotehost":"vl-tlv-ctm-qa22","file_name":"blabla.txt","Ftptype":"sftp"}

如何打破嵌套中的对,以便我可以将其用作变量而不是单行?

谢谢, 佐哈尔

最佳答案

您可以从 JSONObject 获取键值对,如下所示:

        while (iterator.hasNext()) {
            JSONObject factObj = (JSONObject) iterator.next();
            for (Object key : factObj.keySet()) {
                System.out.println(key+":"+factObj.get(key));
            }
        }

关于java - 使用 json.simple 动态获取对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37303600/

相关文章:

jquery - 意外 token : when trying to parse a JSON string

Java AWT - 最后添加的按钮未显示

java - 基于终端的 IDE

javascript - "error"或 "fail"用于 jQuery 中的 $.post Ajax 调用

javascript - 如何根据下拉列表的变化使用 d3.js 对数据集进行子集化

javascript - 读取 Google Sheets 中的 JSON 数据

java - 将 JSON 输出到文件,然后将其输入回

java - 在 Java 8 中收集列表

java - 这里不允许使用数组初始值设定项

java - 是否值得重写整个程序?