Files.readAllLines()
Читает текстовый файл в список строк.
Доступно с: Java 8
Синтаксис
static List<String> readAllLines(Path path) throws IOExceptionПараметры
| Параметр | Тип | Описание |
|---|---|---|
| path | Path | Путь к файлу. |
Возвращаемое значение
List<String>Изменяемый список строк без символов перевода строки.
Примеры
Подсчёт суммы из файла с числами:
void main() throws IOException {
Path file = Path.of("scores.txt");
Files.writeString(file, "10\n25\n7\n");
List<String> lines = Files.readAllLines(file);
int sum = 0;
for (String line : lines) {
sum += Integer.parseInt(line);
}
IO.println(lines.size() + " lines, sum " + sum);
Files.delete(file);
}Результат:
3 lines, sum 42Примечания
Весь файл загружается в память. Для больших файлов, где нужно обработать строки по очереди, лучше Files.lines(). Метод появился в Java 7 с обязательной кодировкой и в Java 8 — в варианте с UTF-8 по умолчанию.
См. также
- Files.lines() — Читает файл лениво — как поток строк, не загружая его в память целиком.
- Files.readString() — Читает весь текстовый файл в одну строку.
- Files.writeString() — Записывает строку в файл: создаёт его или перезаписывает.
Вопросы и ответы по теме
В учебнике
- Чтение и запись файлов — Чтение и запись текстовых файлов в Java — Files.writeString, readString, readAllLines, write, дозапись в конец, Files.lines и буферизованные потоки.