Javascript 在Android中从重复的JSON解析HTML

Javascript 在Android中从重复的JSON解析HTML,javascript,android,html,json,Javascript,Android,Html,Json,我试图使用Android Studio在列表视图中显示JSON响应。但是,我不知道如何处理重复JSON响应 以下是我的JSON响应: {“回复”:[{“第一名”:“开尔文”,“第二名”:“张”,“药物”:“氨氯地平”,“开始日期”:“2016-03-02”,“结束日期”:“2016-03-06”,“剂量”:“50mg”,“说明”:“每天4次”},{“第一名”:“西蒙”,“第二名”:“山药”,“药物”:“氨氯地平”,“开始日期”:“2016-05-09”,“结束日期”:“2016-05-19”,“

我试图使用Android Studio在列表视图中显示JSON响应。但是,我不知道如何处理重复JSON响应

以下是我的JSON响应:

{“回复”:[{“第一名”:“开尔文”,“第二名”:“张”,“药物”:“氨氯地平”,“开始日期”:“2016-03-02”,“结束日期”:“2016-03-06”,“剂量”:“50mg”,“说明”:“每天4次”},{“第一名”:“西蒙”,“第二名”:“山药”,“药物”:“氨氯地平”,“开始日期”:“2016-05-09”,“结束日期”:“2016-05-19”,“剂量”:“100mg”,“说明”:“每天2次,额外剂量”}

下面是我的android studio项目中showJSON()的一个片段

私有void showJSON(字符串响应){

String first_name=”“;
字符串last_name=“”;
字符串国籍=”;
字符串hkid=“”;
字符串dob=“”;
字符串年龄=”;
字符串性别=”;
弦血型=”;
字符串紧急_contact=“”;
字符串关系=”;
字符串mobile=“”;
串食物_algy=“”;
字符串药物_algy=“”;
字符串dfirst_name=“”;
字符串dlast_name=“”;
字符串医学=”;
字符串start_date=“”;
字符串end_date=“”;
字符串剂量=”;
字符串指令=”;
字符串中的_date=“”;
划出_date=“”;
试一试{
JSONObject JSONObject=新JSONObject(响应);
JSONArray result=jsonObject.getJSONArray(“响应”);
JSONObject c=result.getJSONObject(0);
first\u name=c.getString(Config.KEY\u first\u name);
last\u name=c.getString(Config.KEY\u last\u name);
国籍=c.getString(Config.KEY\u国籍);
hkid=c.getString(Config.KEY\u hkid);
dob=c.getString(Config.KEY\u dob);
age=c.getString(Config.KEY\u age);
性别=c.getString(Config.KEY\u性别);
bloodtype=c.getString(Config.KEY\u bloodtype);
emergency\u contact=c.getString(Config.KEY\u EMERGENCYCONTACT);
relationship=c.getString(Config.KEY\u关系);
mobile=c.getString(Config.KEY\u mobile);
in_date=c.getString(Config.KEY_in_date);
out\u date=c.getString(Config.KEY\u out\u date);
food\u algy=c.getString(Config.KEY\u food\u algy);
drug\u algy=c.getString(Config.KEY\u drug\u algy);
dfirst\u name=c.getString(Config.KEY\u dfirst\u name);
dlast_name=c.getString(Config.KEY_dlast_name);
medicine=c.getString(Config.KEY\u medicine);
开始日期=c.getString(Config.KEY\u开始日期);
结束日期=c.getString(Config.KEY\u结束日期);
剂量=c.getString(Config.KEY\u剂量);
指令=c.getString(Config.KEY\u指令);
}捕获(JSONException e){
e、 printStackTrace();
}
textViewResult.setMovementMethod(新的ScrollingMovementMethod());
textViewResult.setText(Html.fromHtml(“一般信息:
”+ “姓名:“+姓+”+“+姓+”
”+ “国籍:“+国籍+”
”+ “HKID:+HKID+”
“+ 出生日期:“+dob+”
”+ “年龄:“+Age+”
”+ 性别:“+性别+”
“+ 血型:“+血型+”

”+ “过敏:
”+ 食物过敏:“+食物过敏+”
”+ “药物过敏:“+药物过敏+”

”+ “入学记录:
”+ “入院日期:”+in_date+“
”+ 出院日期:“+过期日期+”

”+ “紧急联系人:
”+ 联系人:“+紧急联系人+”
“+ 关系:“+关系+”
”+ “移动:“+移动”); }
到目前为止,我可以在“textViewResult.setText()”中按预期输出所有其他信息,因为这些信息的JSON响应是不重复的


有人可以帮助我,告诉我如何循环重复的JSON响应,并以与其他信息类似的格式输出它。

您是作为对象的硬代码

 JSONObject c = result.getJSONObject(0);
尝试使用for循环

for(int i=0;i<=array.length;i++) { 
   JSONObject c = result.getJSONObject(i);   
}      

for(int i=0;i我写了一些我现在无法测试的东西。告诉我它是否对您有效

基本上,我循环遍历结果数组并将数据附加到文本视图中

private void showJSON(String response){
    try {
        String html = "";
        JSONObject jsonObject = new JSONObject(response);
        JSONArray result = jsonObject.getJSONArray("response");

        for(int i = 0; i < result.length(); i++) {
            JSONObject c = result.getJSONObject(i);

            html = "<font size=4><b>General Information: </b></font><br> " +
                   "<font size=4>Name: </font>" + c.getString(Config.KEY_FIRST_NAME) + " "+ c.getString(Config.KEY_LAST_NAME) + "<br>"+
                   "<font size=4>Nationality: </font>" + c.getString(Config.KEY_NATIONALITY) + "<br>"+
                   "<font size=4>HKID: </font>" + c.getString(Config.KEY_HKID) + "<br>"+
                   "<font size=4>Date of Birth: </font>" + c.getString(Config.KEY_DOB) + "<br>"+
                   "<font size=4>Age: </font>" + c.getString(Config.KEY_AGE) + "<br>"+
                   "<font size=4>Gender: </font>" + c.getString(Config.KEY_GENDER) + "<br>"+
                   "<font size=4>Blood Type: </font>" + c.getString(Config.KEY_BLOODTYPE) + "<br><br>" +
                   "<font size=2><b>Allergies: </b></font><br>" +
                   "<font size=4>Food Allergy: </font>" + c.getString(Config.KEY_FOOD_ALGY) +"<br>"+
                   "<font size=4>Drug Allergy: </font>" + c.getString(Config.KEY_DRUG_ALGY) +"<br><br>"+
                   "<font size=2><b>Admission History: </b></font><br>" +
                   "<font size=4>Admitted on: </font>" + c.getString(Config.KEY_IN_DATE) +"<br>"+
                   "<font size=4 >Discharged on: </font>" + c.getString(Config.KEY_OUT_DATE) +"<br><br>"+
                   "<font size=2><b>Emergency Contact: </b></font><br>" +
                   "<font size=4>Contact Person: </font>" + c.getString(Config.KEY_EMERGENCYCONTACT) +"<br>"+
                   "<font size=4>Relationship: </font>" + c.getString(Config.KEY_RELATIONSHIP) + "<br>"+
                   "<font size=4>Mobile: </font>" + c.getString(Config.KEY_MOBILE);

            textViewResult.append(Html.fromHtml(html));
        }

    } catch (JSONException e) {
        e.printStackTrace();
    }
}
private void showJSON(字符串响应){
试一试{
字符串html=“”;
JSONObject JSONObject=新JSONObject(响应);
JSONArray result=jsonObject.getJSONArray(“响应”);
for(int i=0;i”+
“名称:“+c.getString(Config.KEY\u FIRST\u Name)+”“+c.getString(Config.KEY\u LAST\u Name)+”
”+ “国籍:+c.getString(Config.KEY\u国籍)+”
“+ “HKID:”+c.getString(Config.KEY\u HKID)+“
”+ “出生日期:”+c.getString(Config.KEY\u DOB)+“
”+ “年龄:+c.getString(Config.KEY\u年龄)+”
“+ “性别:+c.getString(Config.KEY\u性别)+”
“+ “血型:”+c.getString(Config.KEY\u血型)+“

”+ “过敏:
”+ “食物过敏:”+c.getString(Config.KEY\u Food\u ALGY)+“
”+ “药物过敏:”+c.getString(Config.KEY\u Drug\u ALGY)+“

”+ “入学记录:
”+ “在:”+c.getString(日期中的Config.KEY)+“
”上允许”+ “出院日期:”
private void showJSON(String response){
    try {
        String html = "";
        JSONObject jsonObject = new JSONObject(response);
        JSONArray result = jsonObject.getJSONArray("response");

        for(int i = 0; i < result.length(); i++) {
            JSONObject c = result.getJSONObject(i);

            html = "<font size=4><b>General Information: </b></font><br> " +
                   "<font size=4>Name: </font>" + c.getString(Config.KEY_FIRST_NAME) + " "+ c.getString(Config.KEY_LAST_NAME) + "<br>"+
                   "<font size=4>Nationality: </font>" + c.getString(Config.KEY_NATIONALITY) + "<br>"+
                   "<font size=4>HKID: </font>" + c.getString(Config.KEY_HKID) + "<br>"+
                   "<font size=4>Date of Birth: </font>" + c.getString(Config.KEY_DOB) + "<br>"+
                   "<font size=4>Age: </font>" + c.getString(Config.KEY_AGE) + "<br>"+
                   "<font size=4>Gender: </font>" + c.getString(Config.KEY_GENDER) + "<br>"+
                   "<font size=4>Blood Type: </font>" + c.getString(Config.KEY_BLOODTYPE) + "<br><br>" +
                   "<font size=2><b>Allergies: </b></font><br>" +
                   "<font size=4>Food Allergy: </font>" + c.getString(Config.KEY_FOOD_ALGY) +"<br>"+
                   "<font size=4>Drug Allergy: </font>" + c.getString(Config.KEY_DRUG_ALGY) +"<br><br>"+
                   "<font size=2><b>Admission History: </b></font><br>" +
                   "<font size=4>Admitted on: </font>" + c.getString(Config.KEY_IN_DATE) +"<br>"+
                   "<font size=4 >Discharged on: </font>" + c.getString(Config.KEY_OUT_DATE) +"<br><br>"+
                   "<font size=2><b>Emergency Contact: </b></font><br>" +
                   "<font size=4>Contact Person: </font>" + c.getString(Config.KEY_EMERGENCYCONTACT) +"<br>"+
                   "<font size=4>Relationship: </font>" + c.getString(Config.KEY_RELATIONSHIP) + "<br>"+
                   "<font size=4>Mobile: </font>" + c.getString(Config.KEY_MOBILE);

            textViewResult.append(Html.fromHtml(html));
        }

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