小编典典

如何使用Litjson解析JSON数组?

json

我正在开发一个应用程序,其中我正在使用来自服务器的json格式的数据。但是我能够解析普通的json数据,但是无法解析带有数组的json数据,

json响应如下

[{"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"}]
}]

我如何读取此json数组?

注意 :我正在使用Litjson进行解析。


阅读 779

收藏
2020-07-27

共1个答案

小编典典

您应该按照POCO对象创建自己:

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将立即反序列化此序列:

UserServices services = JsonMapper.ToObject<UserServices>(rawJson);

作为替代方案,您可以使用非通用变量(下面的示例会将所有数据写入控制台):

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"]);
}
2020-07-27