Страницы

Поиск по вопросам

понедельник, 6 января 2020 г.

Чтение URL с помощью лямбда-выражений

#java


Как можно с помощью лямбда-выражений прочитать текстовый документ по ссылке? Т.е.
создается объект URL url = new URL("http://www.nkode.io/assets/programming/countmychars.txt");
Но как читать содержимое документа с помощью лямбды?
    


Ответы

Ответ 1



Окей, если я правильно понял ваш вопрос, вы хотите читать текст из URL построчно, получив stream на список строк. (То есть, аналог кода BufferedReader input = ...; while( (line == input.readline()) != null) ....) Это делается так (код одолжен в этом ответе): try (InputStream is = new URL("http://www.nkode.io/assets/programming/countmychars.txt") .openConnection().getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); Stream stream = reader.lines()) { // вот здесь у вас есть stream строк, делайте с ним что угодно // например: long maxLineLength = stream.mapToLong(e -> e.length()).max().getAsLong(); System.out.println(maxLineLength); }

Комментариев нет:

Отправить комментарий