Ошибка счетчика файлов - PullRequest
       1

Ошибка счетчика файлов

0 голосов
/ 09 октября 2019

Напишите программу, которая просит пользователя ввести имя файла, а затем просит пользователя ввести символ. Программа должна считать и отображать количество раз, когда указанный символ появляется в файле.

Моя проблема в том, что длина и символ в строках 24 и 25 выдают ошибку, и я не уверен, что нужно сделать, чтобы запустить программу.

import java.util.Scanner;
import java.io.*;
public class challenge6 {
    public static void main(String[] args) throws Exception {

        String string;
        char character;
        int count = 0; 

        File file =   new File("./file.txt");
        Scanner input = new Scanner(file);
        input.hasNextLine();

        while (input.hasNextLine())
            System.out.println(input.nextLine());

        System.out.println("enter name of a char");
        character = input.next().charAt(0);    

        for(int i=0; i < input.length(); i++)
        {    if(input.charAt(i) == character)
            count++;
        }

        System.out.println(count);}}

1 Ответ

0 голосов
/ 09 октября 2019

Более простой способ - использовать метод String::replace, чтобы заменить char пустым и проверить длину строки до и после. Вам также нужно перебрать весь файл

File f = new File("c:/tmp/file.txt");
Scanner input = new Scanner(f);
int count = 0;
String charToFind = "a";

while (input.hasNextLine()) {
    String line = input.nextLine();
    int len = line.length();
    line = line.replace(charToFind, "");
    count += len - line.length();
}

System.out.format("There were %d occurrences found%n", count);
input.close();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...