Я думаю, что я могу быть недоразумением.Предполагая, что у вас есть BufferedReader
, ваш основной цикл обработки будет:
br = /* ...get the `BufferedReader`... */;
while ((line = br.readLine()) != null) {
line = line.trim();
if (line.length() == 0) {
continue;
}
// Process the non-blank lines from the input here
}
Обновление : Ваш комментарий:
Напримересли я хочу прочитать строку после имени, если эта строка пуста или пуста, я хочу прочитать строку после этого.
Выше показано, как я структурирую свой цикл обработки, но если выпредпочтительнее, вы можете просто использовать функцию, которая возвращает следующую непустую строку:
String readNonBlankLine(BufferedReader br) {
String line;
while ((line = br.readLine()) != null) {
if (line.trim().length() == 0) {
break;
}
}
return line;
}
, которая возвращает null
в EOF, как readLine
, или возвращает следующую строку, которая не состоит полностьюпробелов.Обратите внимание, что он не удаляет пробелы из строки (мой цикл обработки выше делает это, потому что обычно, когда я делаю это, я хочу, чтобы пробелы были обрезаны по строкам, даже если они не пустые).