Java json数据应在指定的文本视图中打印

Java json数据应在指定的文本视图中打印,java,android,Java,Android,我有关于学生详细信息的json数据,我想在各自的文本视图中打印这些数据。我是json服务的新手,请帮助我在屏幕上打印这些数据。我使用getter和setter作为主题分数,所以我想进一步动态使用它们 这是我的json数据 { "studentInfo": { "studentName": "srini@gmail.com", "studentId": "abc", "date": 14102017, "JanuaryScoreCard" : {

我有关于学生详细信息的json数据,我想在各自的文本视图中打印这些数据。我是json服务的新手,请帮助我在屏幕上打印这些数据。我使用getter和setter作为主题分数,所以我想进一步动态使用它们

这是我的json数据

 {
   "studentInfo": {
   "studentName": "srini@gmail.com",
   "studentId": "abc",
   "date": 14102017,
   "JanuaryScoreCard" : {
              "english" : "44",
              "Science" : "45",
              "maths": "66",
              "social" : "56",
              "hindi" : "67",
              "kannada" : "78",
  },
    "MarchScoreCard" : {
                  " english " : "54",
                  " Science " : "56",
                  " maths ": "70",
                  " social " : "87",
                  " hindi " : "98",
                  " kannada " : "56"
 },
   "comments" : ""
}
我想打印一些东西,但无法打印,我不知道哪里出了问题

public void init()
{
    try {
        parseJSON();
    } catch (JSONException e)
    {
        e.printStackTrace();
    }

}

public void parseJSON() throws JSONException{

    jsonObject = new JSONObject(strJson);
    JSONObject object = jsonObject.getJSONObject("studentInfo");
    patientName = object.getString("studentName");
    patientID  = object.getString("studentId");
    mName.setText(studentName);
    mUserId.setText(studentId);
}

下面是一个基本的JSON解析过程

public void parseJson() {
        String your_response = "replace this with your response";
        try {
            JSONObject jsonObject = new JSONObject(your_response);
            JSONObject studentInfoJsonObject = jsonObject.getJSONObject("studentInfo");
            StudentInfo studentInfo1 = new StudentInfo();
            studentInfo1.setStudentName(studentInfoJsonObject.optString("studentName"));
            studentInfo1.setStudentId(studentInfoJsonObject.optString("studentId"));
            studentInfo1.setDate(studentInfoJsonObject.optString("date"));
            studentInfo1.setComments(studentInfoJsonObject.optString("comments"));
            JSONObject januaryScoreCardJsonObject = studentInfoJsonObject.optJSONObject("JanuaryScoreCard");
            JanuaryScoreCard januaryScoreCard1 = new JanuaryScoreCard();
            januaryScoreCard1.setEnglish(januaryScoreCardJsonObject.optString("english"));
            januaryScoreCard1.setHindi(januaryScoreCardJsonObject.optString("hindi"));
            januaryScoreCard1.setMaths(januaryScoreCardJsonObject.optString("maths"));
            januaryScoreCard1.setSocial(januaryScoreCardJsonObject.optString("social"));
            januaryScoreCard1.setKannada(januaryScoreCardJsonObject.optString("kannada"));
            januaryScoreCard1.setScience(januaryScoreCardJsonObject.optString("Science"));

            JSONObject marchScoreCardJsonObject = studentInfoJsonObject.optJSONObject("JanuaryScoreCard");
            MarchScoreCard marchScoreCard = new MarchScoreCard();
            marchScoreCard.setEnglish(marchScoreCardJsonObject.optString("english"));
            marchScoreCard.setHindi(marchScoreCardJsonObject.optString("hindi"));
            marchScoreCard.setMaths(marchScoreCardJsonObject.optString("maths"));
            marchScoreCard.setSocial(marchScoreCardJsonObject.optString("social"));
            marchScoreCard.setKannada(marchScoreCardJsonObject.optString("kannada"));
            marchScoreCard.setScience(marchScoreCardJsonObject.optString("Science"));

            studentInfo1.setJanuaryScoreCard(januaryScoreCard1);
            studentInfo1.setMarchScoreCard(marchScoreCard);

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

    }
学生信息课

public class StudentInfo {
    private String studentName;
    private String studentId;
    private String date;
    private String comments;
    private JanuaryScoreCard januaryScoreCard;
    private MarchScoreCard marchScoreCard;

    public JanuaryScoreCard getJanuaryScoreCard() {
        return januaryScoreCard;
    }

    public void setJanuaryScoreCard(JanuaryScoreCard januaryScoreCard) {
        this.januaryScoreCard = januaryScoreCard;
    }

    public MarchScoreCard getMarchScoreCard() {
        return marchScoreCard;
    }

    public void setMarchScoreCard(MarchScoreCard marchScoreCard) {
        this.marchScoreCard = marchScoreCard;
    }

    public String getStudentName() {
        return studentName;
    }

    public void setStudentName(String studentName) {
        this.studentName = studentName;
    }

    public String getStudentId() {
        return studentId;
    }

    public void setStudentId(String studentId) {
        this.studentId = studentId;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }
}
这是一月份的课

public class JanuaryScoreCard {
    private String english;
    private String Science;
    private String maths;
    private String kannada;
    private String social;
    private String hindi;

    public String getEnglish() {
        return english;
    }

    public void setEnglish(String english) {
        this.english = english;
    }

    public String getScience() {
        return Science;
    }

    public void setScience(String science) {
        Science = science;
    }

    public String getMaths() {
        return maths;
    }

    public void setMaths(String maths) {
        this.maths = maths;
    }

    public String getKannada() {
        return kannada;
    }

    public void setKannada(String kannada) {
        this.kannada = kannada;
    }

    public String getSocial() {
        return social;
    }

    public void setSocial(String social) {
        this.social = social;
    }

    public String getHindi() {
        return hindi;
    }

    public void setHindi(String hindi) {
        this.hindi = hindi;
    }
}
这是三月班

public class MarchScoreCard{
    private String english;
    private String Science;
    private String maths;
    private String kannada;
    private String social;
    private String hindi;

    public String getEnglish() {
        return english;
    }

    public void setEnglish(String english) {
        this.english = english;
    }

    public String getScience() {
        return Science;
    }

    public void setScience(String science) {
        Science = science;
    }

    public String getMaths() {
        return maths;
    }

    public void setMaths(String maths) {
        this.maths = maths;
    }

    public String getKannada() {
        return kannada;
    }

    public void setKannada(String kannada) {
        this.kannada = kannada;
    }

    public String getSocial() {
        return social;
    }

    public void setSocial(String social) {
        this.social = social;
    }

    public String getHindi() {
        return hindi;
    }

    public void setHindi(String hindi) {
        this.hindi = hindi;
    }
}

你可以使用JSON解析器,然后你可以打印任何你想要的数据,
使用GSON,这里有一个例子,您需要解析这个
json
数据,为此您需要创建适当的bean类,并在解析
json
时将数据放入这个bean类对象并创建列表


然后您需要创建
列表视图
适配器
,以便将数据填充到屏幕或活动中

使用任何json库(如gson)将json字符串转换为java对象。然后使用各自的getter填充文本视图。使用jsonobject并尝试打印我没有URL,直接使用这个json对象首先,这不是您发布的有效json。适当地缩进它,你就会看到这一点。第二,我不希望有一个更好的解决方案来解决您已经连接到那里的问题,您只能做一些微小的改进,比如使用JSON到JavaBean绑定,因为我没有任何URL,直接使用这个JSON objectOK。见我编辑的答案@NikhilKulkarni