Чтение содержимого 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