微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 用jackson删除JSON元素

我有一个特定的 JSON节点,对应于import org.codehaus.jackson.JsonNode,而不是
import org.codehaus.jackson.map.JsonNode.
[
    {
        "givenname": "Jim","formattedname": "jimJackson","familyName": null,"middleName": "none","honorificPrefix": "mr","honorificSuffix": "none"
    },{
        "givenname": "john","formattedname": "johnLasher",{
        "givenname": "carlos","formattedname": "carlosAddner","honorifiPrefix": "mr",{
        "givenname": "lisa","formattedname": "liSaray","honorificPrefix": "mrs",{
        "givenname": "bradshaw","formattedname": "bradshawLion",{
        "givenname": "phill","formattedname": "phillKane",{
        "givenname": "Gabriel","formattedname": "gabrielMoosa","honorificSuffix": "none"
    }
]

我想从上述数组的所有JSON节点中删除“familyName”和“middleName”.有没有办法实现这一点?

解决方法

我没有测试过这个,但我觉得这样做会做你想要的:
import org.codehaus.jackson.node.ObjectNode;
// ...
for (JsonNode personNode : rootNode) {
    if (personNode instanceof ObjectNode) {
        ObjectNode object = (ObjectNode) personNode;
        object.remove("familyName");
        object.remove("middleName");
    }
}

您也可以使用Jackon的原始解析API更有效地执行此操作,但代码将会更加复杂.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐