Разбор JSON в Java (Затмение) - PullRequest
0 голосов
/ 06 июня 2018

У меня есть следующий текст JSON (ИСТОЧНИК URL REST API).Как я могу разобрать, чтобы получить ID, имя, телефон, город и т. Д .:

{"ID":1,"name":"aaa","phone":["345345345","1244","743"],"city":"asdasd"}
{"ID":2,"name":"bbb","phone":["234234","235","124"]}
{"ID":3,"name":"ccc","phone":["4234","6236","123"],"city":"jhjk"}

спасибо.

РЕДАКТИРОВАТЬ:

Я запускаю этот код:

                      String var1 = output;
                       JSONObject obj;
                       try {
                              obj = new JSONObject(var1);
                              String a = obj.getString("name");
                              String b = obj.getString("phone");
                              String c = obj.getString("city");

                              System.out.println("name:" + a);
                              System.out.println("phone:" + b);
                              System.out.println("city:" + c);

и я получил «телефон» в виде строки.кто-нибудь может добавить код для разбора телефонной линии?

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Вы можете использовать Gson для анализа JSON.Просто создайте для этого класс, и Gson выполнит для вас разбор.

class MyClass{
    @SerializedName("ID")
    String ID;
    @SerializedName("name")
    String name;
    @SerializedName("phone")
    List<String> phone;
    @SerializedName("city")
    String city;

    public MyClass(String ID, String name, List<String> phone, String city) {
        this.ID = ID;
        this.name = name;
        this.phone = phone;
        this.city = city;
    }

    public String getID() {
        return ID;
    }

    public void setID(String ID) {
        this.ID = ID;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public List<String> getPhone() {
        return phone;
    }

    public void setPhone(List<String> phone) {
        this.phone = phone;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }
}

, затем в вашем основном классе или задании:

MyClass myclass= new Gson().fromJSON(jsonString,MyClass.class);
System.out.println(myclass.getID());
0 голосов
/ 06 июня 2018

Используйте org.json libarary.После этого создайте экземпляр JSONObject и JSONArray для анализа строки JSON

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...