Если вы хотите использовать сторонние библиотеки , то такие вспомогательные классы, как Files
из Гуава или FileUtils
из Apache Commons IO делает чтение файлов очень простым.
Примеры ниже (где File file = new File("path/to/file.txt")
) чтения всех строк текстового файла в список и чтения всего файла в строку.
Гуава:
List<String> lines = Files.readLines(file, Charsets.UTF_8);
String contents = Files.toString(file, Charsets.UTF_8);
Apache Commons IO:
List<String> lines = FileUtils.readLines(file, "UTF-8");
String contents = FileUtils.readFileToString(file, "UTF-8")
Моя рекомендация (по состоянию на 2013 год): Guava , которая является современной, чистой, активно поддерживаемой библиотекой.Как правило, он более высокого качества, чем материал Apache Commons.
Конечно, добавлять Guava только для этого не имеет смысла, так как это относительно большая библиотека.С другой стороны, не с использованием Guava в Java-проекте сегодня было бы глупо для IMO.:-)
По общему признанию, JDK теперь предоставляет несколько адекватных инструментов ( Scanner ) для этой конкретной цели;использование сторонней библиотеки для чтения файлов было более оправданным, когда что-то вроде этого было альтернативой.