import
java.io .BufferedReader;
import
java.io .IOException;
import
java.io .InputStream;
import
java.io .InputStreamReader;
import
java.net .URL;
import
java.net .URLConnection;
import org.json.JSONObject;
public class MyClass3 {
public static void main(String[] args) throws IOException {
String page = downloadWebPage("
https://breakingbadapi.com/api/quote/random ");
// Парсим JSON-ответ
JSONObject jsonObject = new JSONObject(page);
// Извлекаем цитату
String quote = jsonObject.getJSONArray("quote").getJSONObject(0).getString("quote");
System.out.println(quote);
}
private static String downloadWebPage(String url) throws IOException {
StringBuilder result = new StringBuilder();
String line;
URLConnection urlConnection = new URL(url).openConnection();
try (InputStream is = urlConnection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is))) {
while ((line = br.readLine()) != null) {
result.append(line);
}
}
return result.toString();
}
}
Объяснение:
Импорт библиотеки JSON: Добавьте import org.json.JSONObject; для работы с JSON-данными.
Парсинг JSON:
Получите JSON-ответ от API (page).
Используйте JSONObject(page) для преобразования JSON-строки в объект JSONObject.
Извлечение цитаты:
Получите массив цитат с помощью jsonObject.getJSONArray("quote").
Возьмите первый объект из массива с помощью getJSONObject(0).
Извлеките текст цитаты с помощью getString("quote").
Вывод цитаты: Выведите quote на консоль.
Важно:
Убедитесь, что вы добавили библиотеку JSON в свой проект. Вы можете скачать ее здесь.
API “Breaking Bad” может быть нестабильным, поэтому убедитесь, что URL-адрес запроса актуален.
В ответе API может быть несколько цитат. В этом примере мы выводим только первую.
Пример вывода:
"I am the one who knocks."
import java.io .IOException;
import java.io .InputStream;
import java.io .InputStreamReader;
import java.net .URL;
import java.net .URLConnection;
public class MyClass3 {
public static void main(String[] args) throws IOException {
String page = downoloadWebPage(" https://breakinqbadapi.com/api/quote/random ");
System.out.println(page);
}
private static String downoloadWebPage(String url) throws IOException {
StringBuilder result = new StringBuilder();
String line;
URLConnection urlConnection = new URL (url).openConnection();
try (InputStream is = urlConnection.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader (is))) {
while ((line = br.readLine()) != null) {
result.append(line);
}
}
return result.toString();
}
}
я делаю вот так но что-то не так делаю.