首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用json-simple删除JSON文件的节(JAVA)

使用json-simple删除JSON文件的节(JAVA)
EN

Stack Overflow用户
提问于 2019-09-26 18:43:01
回答 2查看 89关注 0票数 0

你好,我想用JSON-Simple在Java中删除JSON文件的一部分。

JSON文件

代码语言:javascript
复制
{
        "MYID": {
            "user": "name",
            "task": "aufgabe",
            "status": "true"
        },
        "MYID2": {
            "user": "name2",
            "task": "aufgabe2",
            "status": "false"
        },
        "MYID3": {
            "user": "name3",
            "task": "aufgabe3",
            "status": "true"
        }
}

我想删除完整的"MYID“部分。我已经尝试过jsonObject.remove("MYID");,但它不起作用。

EN

回答 2

Stack Overflow用户

发布于 2019-09-26 18:47:52

尝试:

代码语言:javascript
复制
jsonObj.getAsJsonObject("").remove("MYID");

这种方法需要一个字符串参数。首先尝试打印或调试jsonObject (jsonObect.toString())。这应该是一个具有另一个内部映射的映射,并查看此类对象的结构,以删除您感兴趣的部分。

票数 0
EN

Stack Overflow用户

发布于 2019-09-26 18:57:27

我用下面的代码成功地删除了元素:

代码语言:javascript
复制
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;

class SimpleJson {
    public static void main(String[] args) throws IOException {
        JSONObject jObject = (JSONObject) JSONValue.parse(json);
        jObject.remove("MYID3");
        System.out.println(jObject);
        try (FileWriter writer = new FileWriter(new File("/path/result2.json"))) {
            jObject.writeJSONString(writer);
        }

        // java 11 
        // Files.writeString(Path.of("/path/dir1", "result.json"), jObject.toJSONString());
    }
    ...
}

简单依赖: com.googlecode.json-simple - 1.1.1

输出

代码语言:javascript
复制
{
  "MYID": {
    "task": "aufgabe",
    "user": "name",
    "status": "true"
  },
  "MYID2": {
    "task": "aufgabe2",
    "user": "name2",
    "status": "false"
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58115055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档