【问题标题】:Parsing JSON Array Children properties in android在android中解析JSON Array Children属性
【发布时间】:2016-07-01 11:47:45
【问题描述】:

这是用于提取 JSON 数组的 ASP .net 代码:

{
"Attendance": {
"FirstName": "Test1"
"InTime": "12:32:00"
"LastName": "User"
"OutTime": "12:38:11"
}
{
"FirstName": "Test2"
"InTime": "12:26:59"
"LastName": "User"
"OutTime": "12:38:19"
}

}



 JObject o = JObject.Parse(jsonString);
        JArray arr = (JArray)o.SelectToken("Attendance");

        foreach (JObject b in arr.Children<JObject>())
        {
            foreach (JProperty p in b.Properties())
            {
                string name = p.Name;
                string value = p.Value.ToString();
                //  Console.WriteLine(name + ": " + value);
                System.Diagnostics.Debug.WriteLine("" + name + ": " + value);
            }
        }

上面的代码将提取它的名称和值,而不是像我们使用 JSONOBJECT 那样传递名称和返回值。

// System.Diagnostics.Debug.WriteLine("" + name + ": " + value);
FirstName: Test1
InTime: 12:32:00
LastName: User
OutTime: 12:38:11
FirstName: Test2
InTime: 12:26:59
LastName: User
OutTime: 12:38:19

如何在 Android 中实现相同的功能?

【问题讨论】:

  • 为什么在这里投了任何错误的票!?

标签: java android asp.net json


【解决方案1】:

使用 Javajson.org 库,您可以使用以下代码转换为 Java 并准备在 Android 中使用。出于记录目的,您应该将 System.out 替换为 Log.d

import org.json.*;

JSONObject o = new JSONObject(jsonString);
JSONArray arr = obj.getJSONArray("Attendance");
for (int i = 0; i < arr.length(); i++)
{
   JSONObject b = arr.getJSONObject(i);
   Iterator<?> keys = b.keys();    
   while( keys.hasNext() ) {
       String key = (String)keys.next();
       System.out.println(key+": "+b.get(key).toString());   

   }

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多