«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как прочитать содержимое URL-адреса в строку с помощью Java?

Как прочитать содержимое URL-адреса в строку с помощью Java?

Опубликовано 22 декабря 2024 г.
Просматривать:920

How to Read URL Content into a String with Java?

Чтение содержимого URL-адреса в строку с помощью Java

Общая потребность в программировании — получить содержимое URL-адреса и сохранить его в виде нить. В Groovy эта задача упрощается за счет краткого синтаксиса:

String content = "http://www.google.com".toURL().getText();

Однако поиск эквивалентная реализация на Java может оказаться более сложной. Хотя Java предоставляет несколько вариантов решения этой задачи, многие из них включают в себя сложную буферизацию и конструкции циклов.

Упрощенный подход

К счастью, поскольку первоначальный запрос на краткое решение, В Java представлен более простой подход:

String out = new Scanner(new URL("http://www.google.com").openStream(), "UTF-8").useDelimiter("\\A").next();

Эта строка использует класс Scanner для чтения потока, полученного по URL-адресу, обрабатывая весь поток как одну строку.

Расширенная реализация

При желании можно создать более полную реализацию как следует следующее:

public static String readStringFromURL(String requestURL) throws IOException {
    try (Scanner scanner = new Scanner(new URL(requestURL).openStream(),
            StandardCharsets.UTF_8.toString())) {
        scanner.useDelimiter("\\A");
        return scanner.hasNext() ? scanner.next() : "";
    }
}

Этот метод принимает URL-адрес в качестве входных данных и возвращает соответствующее строковое содержимое.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3