Как обрабатывать фрагменты файла с помощью Stream APIJAVA

Программисты JAVA общаются здесь
Anonymous
Как обрабатывать фрагменты файла с помощью Stream API

Сообщение Anonymous »

Чтобы познакомиться с Stream API, я попытался написать довольно простой шаблон.
Проблема: Наличие текстового файла, содержащего невложенные блоки текста. Все блоки идентифицируются шаблонами начала/конца (например, и ). Содержимое блока синтаксически неотличимо от шума между блоками. Поэтому невозможно работать с простыми лямбда-выражениями (без сохранения состояния).
Мне удалось реализовать что-то уродливое, например:

Код: Выделить всё

Files.lines(path).collect(new MySequentialParseAndProcessEachLineCollector());
Это не то, что мне нужно.
Я ищу картограф типа:

Код: Выделить всё

Files.lines(path)
.map(MyMapAllLinesOfBlockToBuckets())
.parallelStream()
.collect(new MyProcessOneBucketCollector());
Вопрос Есть ли хороший способ извлечь фрагменты данных из потока Java 8? кажется, содержит скелет решения. К сожалению, мне не удалось применить это к моей проблеме.
Есть какие-нибудь подсказки, как это можно сделать?

Подробнее здесь: https://stackoverflow.com/questions/264 ... stream-api

Вернуться в «JAVA»