Я пытаюсь создать программу, которая читает из файла, и подсчитывает, сколько строчных букв, прописных букв, пробельных символов (вкладка, ввод и т. Д.) И всего остального.Подсчет символов в текстовом файле
Это код, который у меня есть, и он показывает нужное количество букв, но по какой-то причине «другой» счетчик показывает путь больше, чем нужно. Кто-нибудь знает, что я сделал неправильно?
File file = new File("C:\\Temp\\Test.txt");
Scanner s = new Scanner(file).useDelimiter("");
for (int i = 0; i < file.length(); i++) {
char c = s.next().charAt(0);
if (Character.isLetter(c)) {
if (Character.isLowerCase(c)) {
isLower++;
} else {
isUpper++;
}
} else if (Character.isSpaceChar(c) || (c == '\n') || (c == '\t')) {
isSpace++;
} else {
isOther++;
}
}
Для вашего второго условного, обратите внимание, что существует функция 'Character.isWhitespace', которая будет охватывать все три из этих случаев. – SirBraneDamuj
Вы считаете цифры? –
Помимо вашей проблемы, ваши имена переменных предполагают, что 'isLower, isUpper, isSpace, isOther' являются логическими. Вы должны переименовать их. –