我有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”。任何有用的帮助。
答案 0 :(得分:1)
由“result
”创建的JSON对象可能是父JSON
对象,而"name"
在嵌套的JSON对象中。试试json.getObject("d").getString("name")
。
答案 1 :(得分:0)
您可以使用JSON轻松解析json数据