Имея проблемы с использованием цикла, чтобы найти символ пользователя из текстового файла в JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Имея проблемы с использованием цикла, чтобы найти символ пользователя из текстового файла в Java

Сообщение Anonymous »

У меня проблемы с написанием программы для моего класса Java. Инструкции назначения заключаются в следующем: < /p>

"Счетчик письма с файлом:

Напишите программу, которая просит пользователя ввести имя файла, а затем придерживается пользователя для ввода персонажа. Program. "< /p>
< /blockquote>
Текстовый файл, который мой профессор предоставил нам протестировать эту программу 1307 строк случайно обширных и размещенных букв, которые эта программа должна пройти, и, по какой -то причине, я не могу заставить эту программу работать правильно. Я пытался использовать вещи вне того, что мы узнали до сих пор в классе и в книге, но я за пределами потерянного.f
d
s
h
j
< /code>
Вот мой код до сих пор (составлен в Netbeans 23): < /p>
package filelettercounter;

import java.util.Scanner;
import java.io.*;

public class FileLetterCounter {

public static void main(String[] args) throws IOException {

Scanner keyboard = new Scanner(System.in);

System.out.print("Enter the file name: ");
String filename = keyboard.nextLine();

File file = new File(filename);
Scanner inputFile = new Scanner(file);

do {

int counter = 0;
String line = inputFile.nextLine();

System.out.print("Enter a character: ");
String character = inputFile.nextLine();

if(line.contains(character)) {
counter++;
}

System.out.println("The character " + character + " appears " +
counter + " times in the file.");

}while(inputFile.hasNext());

inputFile.close();

}
}
< /code>
Вывод печатает все 1307 линий, показывающих, что каждый из них появляется в 0 раз ... < /p>
Enter a character: The character f appears 0 times in the file.
Enter a character: The character d appears 0 times in the file.
Enter a character: The character s appears 0 times in the file.
Enter a character: The character h appears 0 times in the file.
Enter a character: The character j appears 0 times in the file.
< /code>
.... с исключением, сброшенным большую часть пути вниз по выводу.Exception in thread "main" java.util.NoSuchElementException: No line found
at java.base/java.util.Scanner.nextLine(Scanner.java:1660)
at filelettercounter.FileLetterCounter.main(FileLetterCounter.java:31)
< /code>
Вывод, который мне нужен,-это примерно так: < /p>
Enter the file name: "filename"
Enter a character: "character"
The character (character) appears (number of times) times in the file.
< /code>
Относительно ввода любого из вас, кто бесконечно более опытный, чем я, я не должен делать что -то необычное. Самым дальним, который мы прошли в качестве класса, были различные петли (потому что, если/иначе, если/else, do, while), накопление переменных и т. Д. Это так же базовое, как и базовый. Итак, пожалуйста, никаких списков, массивов, делимиров, или чего -то безумного.


Подробнее здесь: https://stackoverflow.com/questions/790 ... -file-in-j

Вернуться в «JAVA»