在Android中解析具有未知属性名称的JSON列表,可以使用JsonParser
和JsonObject
类来解析JSON数据。以下是一个示例代码:
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONTokener;
public class JsonParserExample {
public void parseJsonList(String json) {
try {
JSONTokener tokener = new JSONTokener(json);
JSONArray jsonArray = new JSONArray(tokener);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
// 获取属性名称列表
JSONArray keys = jsonObject.names();
for (int j = 0; j < keys.length(); j++) {
String key = keys.getString(j);
String value = jsonObject.getString(key);
// 处理属性名称和值
System.out.println("Key: " + key + ", Value: " + value);
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// 示例JSON数据
String json = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
JsonParserExample example = new JsonParserExample();
example.parseJsonList(json);
}
}
在上面的示例中,我们首先使用JSONTokener
将JSON字符串转换为JSONArray
对象。然后,我们遍历JSONArray
中的每个JSONObject
,并使用names()
方法获取属性名称列表。接下来,我们可以使用获取的属性名称来获取相应的属性值。
输出将是:
Key: name, Value: John
Key: age, Value: 30
Key: name, Value: Jane
Key: age, Value: 25
这样,你就可以解析具有未知属性名称的JSON列表了。你可以根据需要进一步处理属性名称和值。
上一篇:android解析json数据