Я пытаюсь прочитать длинный файл построчно и одновременно пытаюсь извлечь некоторую информацию из строки.
Вот пример того, что я делаю:
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.stream.Stream;
public class ReadFile_Files_Lines {
public static void main(String[] pArgs) throws IOException {
String fileName = "c:\\temp\\sample-1GB.txt";
File file = new File(fileName);
try (Stream<String> linesStream = Files.lines(file.toPath())) {
linesStream.forEach(line -> {
System.out.println(line);
});
}
}
}
Одна строка в моем файле разделена на три части:
10 1010101 15
Я хочу прочитать эти три информации каждый раз.
Нравится:
String str1 = line[0];
String str2 = line[1];
String str3 = line[2];
Решение, которое я ищу, будет лучше, если я не преобразую поток в коллекцию.
Я буду использовать эти 3 строки для создания структуры данных графа, что-то вроде:
createGraphe(str1,str2,str3);`
Я знаю, что могу отправить полную строку, но когда я изучаю Stream, мне интересно узнать, как извлечь эту информацию.
Спасибо.