Obtenir FileNotFoundException même si fichier existe et est correctement orthographié

Je crée un petit programme qui lit un fichier texte, qui contient beaucoup de chiffres générés de manière aléatoire, et de produire des statistiques telles que la moyenne, la médiane et le mode. J'ai créé le fichier texte et fait en sorte que le nom est exactement le même lorsqu'ils sont déclarés en tant que nouveau fichier.

Oui, le fichier est dans le même dossier que les fichiers de classe.

public class GradeStats {
public static void main(String[] args){
    ListCreator lc = new ListCreator(); //create ListCreator object
    lc.getGrades(); //start the grade listing process
    try{
        File gradeList = new File("C:/Users/Casi/IdeaProjects/GradeStats/GradeList");
        FileReader fr = new FileReader(gradeList); 

        BufferedReader bf = new BufferedReader(fr);       

        String line;

        while ((line = bf.readLine()) != null){
            System.out.println(line);
        }
        bf.close();
    }catch(Exception ex){
        ex.printStackTrace();


    }
}

}

Ligne d'erreur se lit comme suit:

java.io.FileNotFoundException: GradeList.txt (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at java.io.FileReader.<init>(FileReader.java:72)
    at ListCreator.getGrades(ListCreator.java:17)
    at GradeStats.main(GradeStats.java:11)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Veuillez s'il vous plaît inclure les informations sur les IDE, et la structure de répertoire?
Le fichier peut être dans le même répertoire que les fichiers de classe, mais qui n'est normalement pas le répertoire courant. Essayer de faire un système..println(GradeList.getAbsolutePath())
Ensuite, utilisez le chemin d'accès complet vers le fichier. Il devrait être évident que vous êtes à la recherche dans le mauvais endroit pour le fichier.
Ce qui est arrivé à votre fichier ".txt" extension? Double vérification, contrôle triple, quadruple vérifier que tout est écrit ET capitalisés exactement comme il est sur le disque.
Votre code dit "GradeList" et votre message d'exception dit "GradeList.txt". Ergo vous n'êtes pas à l'exécution de ce code.

OriginalL'auteur cmcdaniels | 2012-05-29