如何在android中解析这个JSON(从.NET webservice返回)

时间:2013-08-19 21:02:05

标签: java android asp.net json

我有ASP.NET webservice,以JSON格式返回Person对象。请参阅以下Webservice代码:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public Person person() {

    Person me = new Person();
    me.name = "Mark";
    me.lastname = "Brawn";

    return me;
}


public class Person {

 public String name;
 public String lastname;
}

然后我尝试在Android客户端解析此响应,并获得以下JSON输出:

{
"d": {
    "__type": "WebService+Person",
    "name": "Mark",
    "lastname": "Brawn"
}

}

此输出似乎是有效的JSON格式,但我想知道如何从此输出中正确获取属性(name,lastname ...)。

在android中我解析了这个输出:

JSONObject json = new JSONObject(result);
json.getString("name");

但我得到一个例外:

07-12 19:07:14.708: W/System.err(21575): org.json.JSONException: No value for name

所以实际上我想从这个JSON获得值“name”和“lastname”。任何有用的帮助。

2 个答案:

答案 0 :(得分:1)

由“result”创建的JSON对象可能是父JSON对象,而"name"在嵌套的JSON对象中。试试json.getObject("d").getString("name")

答案 1 :(得分:0)

您可以使用JSON轻松解析json数据

gson download