Android 我应该如何解析这种JSON?

Android 我应该如何解析这种JSON?,android,json,Android,Json,我不熟悉JSON解析。如果有人能帮助我在Android中解析这种json数组,那将是一个很大的帮助。 多谢各位 { "response": 200, "department": [ "Information Technology" ], "subject": [ "ads(th)" ], "professional": [ "cg(th)", "cg(lab)" ], "semester": [ "3A", "5A"

我不熟悉JSON解析。如果有人能帮助我在Android中解析这种json数组,那将是一个很大的帮助。 多谢各位

{
  "response": 200,
  "department": [
    "Information Technology"
  ],
  "subject": [
    "ads(th)"
  ],
  "professional": [
    "cg(th)",
    "cg(lab)"
  ],
  "semester": [
    "3A",
    "5A",
    "5A"
  ]
}
这是你的回答:

{
  "response": 200,
  "department": [
    "Information Technology"
  ],
  "subject": [
    "ads(th)"
  ],
  "professional": [
    "cg(th)",
    "cg(lab)"
  ],
  "semester": [
    "3A",
    "5A",
    "5A"
  ]
}
你可以这样做

String responseString="" //this string is ur web service response
try {
        //JSON is the JSON code above

        JSONObject jsonResponse = new JSONObject(responseString);
        JSONArray department = jsonResponse.getJSONArray("department");
        String hey = department.toString();

JSONArray subject = jsonResponse.getJSONArray("subject");
        String sub = subject.toString();

JSONArray  professional= jsonResponse.getJSONArray("professional");
        String pro = professional.toString();
//like this u can parse other JsonArray

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
在jsonarray中获得这些值之后,您希望在spinner中显示它,而不是像这样做

String responseString="" //this string is ur web service response
try {
        //JSON is the JSON code above

        JSONObject jsonResponse = new JSONObject(responseString);
        JSONArray department = jsonResponse.getJSONArray("department");
        String hey = department.toString();

JSONArray subject = jsonResponse.getJSONArray("subject");
        String sub = subject.toString();

JSONArray  professional= jsonResponse.getJSONArray("professional");
        String pro = professional.toString();
//like this u can parse other JsonArray

    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
ArrayList listdata=new ArrayList();
如果(专业!=null){
对于(inti=0;i
try{//解析JSON时,需要try-catch来处理发生的错误
JSONObject fullJSON=新的JSONObject(“{”回应“:200,“部门“:[”信息技术“],”主题“:[”广告(th)\”],”专业“:[”cg(th)\“,”cg(实验室)\”],”学期“:[”3A\“,”5A\“,”5A\”);
int response=fullJSON.getInteger(“response”);
JSONArray department=fullJSON.getJSONArray(“部门”);
Log.i(“,department.getString(0));
JSONArray学期=fullJSON.getJSONArray(“学期”);
对于(int i=0;i我建议您使用

使用Gson,您的映射类将如下所示:

public class YourClass {

@SerializedName("response")
private Integer response;

@SerializedName("department")
private List<String> department;

@SerializedName("subject")
private List<String> subject;

@SerializedName("professional")
private List<String> professional;

@SerializedName("semester")
private List<String> semester;
}
公共类您的类{
@SerializedName(“响应”)
私有整数响应;
@序列化名称(“部门”)
私人名单部;
@序列化名称(“主题”)
私人名单科目;
@序列化名称(“专业”)
私人名单专业人士;
@序列化名称(“学期”)
私人名单学期;
}
使用Gson,您可以轻松地在POJO中转换Json(反之亦然)。请查看文档。

试试这个

try {
    JSONObject obj_result=new JSONObject(result);
    String response=obj_result.getString("response");

    JSONArray arr_department=obj_result.getJSONArray("department");
    for(int i=0;i<arr_department.length();i++)
    {
        String  department_name=arr_department.getString(i);
        Log.d("TAG","department_name:"+department_name);
    }

    JSONArray arr_subject=obj_result.getJSONArray("subject");
    for(int i=0;i<arr_subject.length();i++)
    {
        String  subject_name=arr_subject.getString(i);
        Log.d("TAG","subject_name:"+subject_name);
    }

    JSONArray arr_professional=obj_result.getJSONArray("professional");
    for(int i=0;i<arr_professional.length();i++)
    {
        String  professional_name=arr_professional.getString(i);
        Log.d("TAG","professional_name:"+professional_name);
    }

    JSONArray arr_semester=obj_result.getJSONArray("semester");
    for(int i=0;i<arr_semester.length();i++)
    {
        String  semester_name=arr_semester.getString(i);
        Log.d("TAG","semester_name:"+semester_name);
    }

} catch (JSONException e) {
    e.printStackTrace();
}
试试看{
JSONObject对象结果=新JSONObject(结果);
字符串响应=obj_result.getString(“响应”);
JSONArray arr_department=obj_result.getJSONArray(“department”);

对于(int i=0;iParse使用哪种语言?Android中的java..但是我如何存储它并在spinner中显示它?如果你能帮我的话,这将是一个很大的帮助!!是的,你可以在spinner中显示它,但你想在professional或Semmer中显示什么?检查下面的代码以在spinner中显示项目我不能将整个代码放在注释中我正在使用4 spinner和每个数组应该放在每个微调器中。可以这样做吗?@AnujGajbhiye我已经编辑了答案,请再次检查…如果你有任何问题,你可以问…是的,你也可以用4个不同的微调器来做…就像我为专业做的那样,你可以为所有其他3个微调器做
public class YourClass {

@SerializedName("response")
private Integer response;

@SerializedName("department")
private List<String> department;

@SerializedName("subject")
private List<String> subject;

@SerializedName("professional")
private List<String> professional;

@SerializedName("semester")
private List<String> semester;
}
try {
    JSONObject obj_result=new JSONObject(result);
    String response=obj_result.getString("response");

    JSONArray arr_department=obj_result.getJSONArray("department");
    for(int i=0;i<arr_department.length();i++)
    {
        String  department_name=arr_department.getString(i);
        Log.d("TAG","department_name:"+department_name);
    }

    JSONArray arr_subject=obj_result.getJSONArray("subject");
    for(int i=0;i<arr_subject.length();i++)
    {
        String  subject_name=arr_subject.getString(i);
        Log.d("TAG","subject_name:"+subject_name);
    }

    JSONArray arr_professional=obj_result.getJSONArray("professional");
    for(int i=0;i<arr_professional.length();i++)
    {
        String  professional_name=arr_professional.getString(i);
        Log.d("TAG","professional_name:"+professional_name);
    }

    JSONArray arr_semester=obj_result.getJSONArray("semester");
    for(int i=0;i<arr_semester.length();i++)
    {
        String  semester_name=arr_semester.getString(i);
        Log.d("TAG","semester_name:"+semester_name);
    }

} catch (JSONException e) {
    e.printStackTrace();
}