Парсинг файла с помощью Stream API

139
28 октября 2019, 12:00

Подскажите как такое можно сделать с помощью стримов? Я в них новичок, может хотябы с помощью каких метов можно сделать. Буду рад любой помощи!

Вопрос! Есть логи старта и финиша с id(подстрока лога) участника и его временем старта(подстрока лога) используя java 8 (Stream API только) и Parsing Logic достать информацию из файла при повторении тегов использовать первое вхождение.

Parsing Logic
-------------
TAG_STARTS_AT = 4;//начало подстроки для id
TAG_ENDS_AT = 16; //exclusive - конец подстроки для id
TIMESTAMP_STARTS_AT = 20; // начало подстроки времени
TIMESTAMP_ENDS_AT = 32; //exclusive - конец подстроки времени
Пример лога
-------------------------------------
aaA2058001c71dae00011608131001342900FS (id=058001c71dae, time=160813100134)
aaA205800221804b00011608131001343300FS
aaA105800221406700011608131001344100FS
aaA1058001c8375000011608131001344200FS
aaA10580022186b200011608131001345d00FS
Answer 1
    final String fileName = "file.txt";
        try (Stream<String> stream = Files.lines(Paths.get(fileName))) {
            final List<Logs> logs = stream
                    .map(t -> new Logs(t.substring(4, 16), Long.valueOf(t.substring(20, 32))))
                    .collect(Collectors.toList());
            System.out.println(logs);
        } catch (IOException e) {
            e.printStackTrace();
        }
class Logs {
    private final String id;
    private final Long time;
    Logs(String id, Long time) {
        this.id = id;
        this.time = time;
    }
    public String getId() {
        return id;
    }
    public Long getTime() {
        return time;
    }
    @Override
    public String toString() {
        return "Logs{" + "id=" + id + ", time=" + time + '}';
    }
}
READ ALSO
Не могу получить список файлов и папок google

Не могу получить список файлов и папок google

Пытаюсь получить список файлов и папок GoogleDriveВ документации написано для того, чтобы получить список нужно выполнить такой запрос:

131
Заполнение TableView из ObservableList, который состоит из массива массивов

Заполнение TableView из ObservableList, который состоит из массива массивов

Коллеги, добрый вечер! Прошу вашей помощи в понимании ObservableListУ меня есть ObservableList, состоящий из массива Object[], каждый элемент которого имеет...

105
Открытие activity в отдельном окне

Открытие activity в отдельном окне

Как сделать что бы новая activity открывалась не по верх другой, а как бы в новом окне, те чтобы при нажатии на кнопку последних программ пользователь...

122
JAVA servlet ( insert MySQL) [закрыт]

JAVA servlet ( insert MySQL) [закрыт]

Я написал код который добавляет имя и фамилию студента в БДЯ все написал но почему то он только NULL выводит

134