如何使用gson解析包含列表的json字符串?

时间:2011-04-21 19:54:49

标签: java json gson deserialization

如何用Java中的Gson解析这个特定的json字符串?

{"orders":[{"oid":"347","status":"1"},{"oid":"348","status":"1"}],"a":14.15,"b":0}

有问题的是订单清单。

我想我必须对Gson.parse(json,type-toke)使用“type token”参数,但我不清楚如何做到这一点。

2 个答案:

答案 0 :(得分:3)

您必须创建可以映射到的Java类型。所以,你会有这样的事情。

public class Result {
    private List<Order> orders;
    private Number a;
    private Number b;

    // getter and setter for orders, a, and b
}

public class Order {
    private Number oid;
    private Number status;
    // getter and setter for oid and status
}

然后你可以用

之类的东西进行解析
Result result = gson.fromJson( yourSring, Result.class );

警告,这是未编译的,未经测试的代码,但应该让你接近。

答案 1 :(得分:0)

现在,你可以在java中使用json-path,参见文档。它简单而聪明。 http://code.google.com/p/json-path/