如何用Java中的Gson解析这个特定的json字符串?如何解析包含gson列表的json字符串?
{"orders":[{"oid":"347","status":"1"},{"oid":"348","status":"1"}],"a":14.15,"b":0}
有什么问题是订单列表。
我想我们必须对Gson.parse(json,type-toke)使用“type token”参数,但是我不清楚这是如何实现的。
如何用Java中的Gson解析这个特定的json字符串?如何解析包含gson列表的json字符串?
{"orders":[{"oid":"347","status":"1"},{"oid":"348","status":"1"}],"a":14.15,"b":0}
有什么问题是订单列表。
我想我们必须对Gson.parse(json,type-toke)使用“type token”参数,但是我不清楚这是如何实现的。
您必须创建它可以映射到的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);
警告,这是未编译的,未经测试的代码,但应该让你接近。
现在,您可以在java中使用json-path,请参阅文档。它简单而巧妙。 http://code.google.com/p/json-path/
请解释一下。只给出任何外部链接的参考并不是一个好的答案。 – Sankumarsingh 2013-08-05 08:54:19
This Works。我认为这会涉及更复杂的事情。 – 2011-04-21 20:25:19
幸好没有:) – digitaljoel 2011-04-21 20:32:24
请问这也是保持列表的顺序吗? 意味着如果我会执行'orders.get(0).getOid()',那么它会返回347? – thekosmix 2013-07-23 09:11:27