问题
I am developing an application in which i am using data came from server in the json format. However i am able to parse normal json data but failed to parse the json data with arrays,
the json response is given below,
[{"id_user":"80","services":
[{"idservice":"3","title":"dni-e","message":"Texto para el dni-e"},
{"idservice":"4","title":"Tarjeta azul","message":"Texto para la tarjeta azul"}]
}]
how can i read this json array?
Note:I am using Litjson for parsing.
回答1:
You should create yourselft following POCO objects:
public class Service
{
public int idservice { get; set; }
public string title { get; set; }
public string message { get; set; }
}
public class UserServices
{
public int id_user { get; set; }
public List<Service> services { get; set; }
}
LitJSON will deserialize this out-of-the-box:
UserServices services = JsonMapper.ToObject<UserServices>(rawJson);
As an alternative you can use non-generic variant (below sample would wrote all data to the console):
JsonData data = JsonMapper.ToObject(rawJson);
Console.WriteLine("User id: {0}", data["id_user"]);
Console.WriteLine("Services:");
for (int i = 0; i < data["services"].length; i++)
{
Console.WriteLine (" Id: {0}; Title: {1}; Message {2}", data["services"][i]["idservice"], data["services"][i]["title"], data["services"][i]["message"]);
}
来源:https://stackoverflow.com/questions/13469666/how-to-parse-json-array-using-litjson