从 Android 中的 Json 数组解析 Json
Parse Json from Json array in Android
我有以下 JSON,我想解析所有 "vcsapat" 和 "hcsapat" 以及第一行中的所有数据。
Json 在这里:Link
我尝试了以下代码,但只有例外情况
JSONArray JSonAdatok = null;
JSonAdatok = jObject.getJSONArray("vcsapat");
for (int i = 0; i < JSonAdatok.length(); i++) {
JSONObject jo = null;
try {
jo = JSonAdatok.getJSONObject(i);
System.out.print("\n"+jo);
JSONObject kezdojatekosok = jo.getJSONObject("kezdo");
System.out.print("\n"+kezdojatekosok);
for (int j = 0; j < kezdojatekosok.length(); j++) {
JSONObject egyjjson = kezdojatekosok;
异常如下:
at org.json.JSON.typeMismatch(JSON.java:100)
org.json.JSONObject.getJSONArray(JSONObject.java:588)
您的 JSON 首先包含一个以“{”开头的对象,因此您的整个 JSON 字符串代表一个 JSON 对象。然后,在其中获取对象“hforma”,然后是 forma 的 JSONArray,然后您可以对它们进行迭代以获取每个 hcsapat 和 vcsapat 属性作为字符串。
像这样:
JSONObject complete = new JSONObject(WHOLE_JSON_AS_STRING);
JSONObject hforma = complete.getJSONObject("hforma");
JSONArray forma = hforma.getJSONArray("forma");
for (int i = 0; i < forma.length(); i++) {
JSONObject formaData = forma.getJSONObject(i);
String hcsapat = formaData.getString("hcsapat");
String vcsapat = formaData.getString("vcsapat");
}
我没有测试该代码,它只是一个遵循您的 JSON 结构的示例。
我有以下 JSON,我想解析所有 "vcsapat" 和 "hcsapat" 以及第一行中的所有数据。
Json 在这里:Link
我尝试了以下代码,但只有例外情况
JSONArray JSonAdatok = null;
JSonAdatok = jObject.getJSONArray("vcsapat");
for (int i = 0; i < JSonAdatok.length(); i++) {
JSONObject jo = null;
try {
jo = JSonAdatok.getJSONObject(i);
System.out.print("\n"+jo);
JSONObject kezdojatekosok = jo.getJSONObject("kezdo");
System.out.print("\n"+kezdojatekosok);
for (int j = 0; j < kezdojatekosok.length(); j++) {
JSONObject egyjjson = kezdojatekosok;
异常如下:
at org.json.JSON.typeMismatch(JSON.java:100)
org.json.JSONObject.getJSONArray(JSONObject.java:588)
您的 JSON 首先包含一个以“{”开头的对象,因此您的整个 JSON 字符串代表一个 JSON 对象。然后,在其中获取对象“hforma”,然后是 forma 的 JSONArray,然后您可以对它们进行迭代以获取每个 hcsapat 和 vcsapat 属性作为字符串。
像这样:
JSONObject complete = new JSONObject(WHOLE_JSON_AS_STRING);
JSONObject hforma = complete.getJSONObject("hforma");
JSONArray forma = hforma.getJSONArray("forma");
for (int i = 0; i < forma.length(); i++) {
JSONObject formaData = forma.getJSONObject(i);
String hcsapat = formaData.getString("hcsapat");
String vcsapat = formaData.getString("vcsapat");
}
我没有测试该代码,它只是一个遵循您的 JSON 结构的示例。