放牧代码和思想
专注自然语言处理、机器学习算法
    愛しさ 優しさ すべて投げ出してもいい

五分钟Jackson入门(三) JSON数据类XML转换(附项目源码)

JSON数据看起来就像一棵树,也可以用类似于XML的解析方法来解析。将上篇文章的Demo改为:

package com.hankcs;

import org.codehaus.jackson.JsonNode;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.node.ObjectNode;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class Main
{

    public static void main(String[] args) throws IOException
    {
        ObjectMapper m = new ObjectMapper();
        // can either use mapper.readTree(source), or mapper.readValue(source, JsonNode.class);
        JsonNode rootNode = m.readTree(new File("user.json"));
        // ensure that "last name" isn't "Xmler"; if is, change to "Jsoner"
        JsonNode nameNode = rootNode.path("name");
        String lastName = nameNode.path("last").getTextValue();
        System.out.println(lastName);
        if ("xmler".equalsIgnoreCase(lastName))
        {
            ((ObjectNode) nameNode).put("last", "Jsoner");
        }
        // and write it out:
        m.writeValue(new File("user-modified.json"), rootNode);
    }
}

项目源码:http://pan.baidu.com/s/1iqFYe

参考:http://wiki.fasterxml.com/JacksonInFiveMinutes#Full_Data_Binding_.28POJO.29_Example

知识共享许可协议 知识共享署名-非商业性使用-相同方式共享码农场 » 五分钟Jackson入门(三) JSON数据类XML转换(附项目源码)

评论 欢迎留言

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

我的作品

HanLP自然语言处理包《自然语言处理入门》