Javascript 在Android中从重复的JSON解析HTML
我试图使用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(字符串响应){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”,“
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();
}
}