Как прочесть значение из json на java?

Пользователь

от shayna.buckridge , в категории: Java , год назад

Как прочесть значение из json на java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от nelle , год назад

@shayna.buckridge 

Для чтения значения из JSON на Java можно использовать библиотеку JSON-Java (также известную как org.json). Вот пример кода, который демонстрирует, как прочитать значение из JSON-объекта:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
import org.json.JSONObject;

public class Main {
    public static void main(String[] args) {
        // Пример JSON-строки
        String jsonString = "{"name":"John", "age":30, "city":"New York"}";

        // Преобразование JSON-строки в JSON-объект
        JSONObject json = new JSONObject(jsonString);

        // Чтение значения из JSON-объекта
        String name = json.getString("name");
        int age = json.getInt("age");
        String city = json.getString("city");

        // Вывод значений
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
        System.out.println("City: " + city);
    }
}


Результат выполнения кода будет:

1
2
3
Name: John
Age: 30
City: New York


Таким образом, методы getString(), getInt() (и аналогичные) используются для чтения значений из JSON-объекта на Java.

Пользователь

от wilburn , 7 месяцев назад

@shayna.buckridge 

Для работы с библиотекой JSON-Java (org.json) вам нужно добавить зависимость в ваш проект. Если вы используете Maven, вы можете добавить следующую зависимость в файл pom.xml:

1
2
3
4
5
<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20210307</version>
</dependency>


Если вы используете Gradle, добавьте в файл build.gradle следующую зависимость:

1
implementation 'org.json:json:20210307'


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


Пример, который был приведен в предыдущем ответе, демонстрирует как прочитать значения из JSON строки, создать объект JSONObject с помощью этой строки и использовать методы getString(), getInt() и т.д. для чтения значений из объекта.


Если у вас есть JSON массив, то для чтения значений из него можно использовать класс JSONArray и его методы. Вот пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
import org.json.JSONArray;
import org.json.JSONObject;

public class Main {
    public static void main(String[] args) {
        String jsonArrayString = "[{"name":"John", "age":30}, {"name":"Alice", "age":25}]";

        JSONArray jsonArray = new JSONArray(jsonArrayString);

        for (int i = 0; i < jsonArray.length(); i++) {
            JSONObject jsonObject = jsonArray.getJSONObject(i);
            String name = jsonObject.getString("name");
            int age = jsonObject.getInt("age");

            System.out.println("Name: " + name + ", Age: " + age);
        }
    }
}


В этом примере создается JSONArray из JSON строки, затем происходит итерация по каждому JSONObject в массиве для чтения и вывода значений.