На вашем месте я бы, вероятно, использовал FileUtils класс из Apache Commons IO . Метод readLines(File file)
возвращает список строк, по одному для каждой строки. Тогда вы можете просто обрабатывать одну строку за раз.
Примерно так:
File file = new File("test.txt");
List<String> lines = FileUtils.readLines(file);
for (String line : lines) {
// handle one line
}
(К сожалению, Commons IO не поддерживает генерики, поэтому при назначении в List * будет выдано предупреждение о непроверенном назначении. Чтобы исправить это, используйте @SuppressWarnings или просто нетипизированный List и приведение к Strings .)
Это, возможно, пример ситуации, когда можно применить " знать и использовать библиотеки " и вообще пропустить написание какого-то стандартного кода низкого уровня.