Как обрабатывать фрагменты файла с помощью java.util.stream

Чтобы познакомиться с API-интерфейсом stream, я попытался написать довольно простой шаблон.

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

Я просто смог реализовать что-то уродливое:
Files.lines(path).collect(new MySequentialParseAndProsessEachLineCollector<>());
Если честно, это не то, что я хочу.

Я ищу что-то вроде картографа:
Files.lines(path).map(MyMapAllLinesOfBlockToBuckets()).parallelStream().collect(new MyProcessOneBucketCollector<>());

Есть ли хороший способ извлечь куски данных из потока Java 8 кажется, содержит скелет решения. К сожалению, я глупо переводить это на мою проблему. ;-)

Есть намеки?

Ответы на вопрос(1)

Ваш ответ на вопрос