2015-02-23 1 views
-1

SOLVED assis avec mon professeur aujourd'hui pendant 30 minutes solides avant nous avons pensé pour créer le « Scanner FileInput » avant la ligne « essayer ». ÇA A MARCHÉ. J'espère que ceci aide quelqu'un d'autre. Après des recherches approfondies, je n'ai pas été en mesure de savoir pourquoi le scanner ne prend pas de photo "hurricane.txt" Je l'ai enregistré en tant que fichier .txt dans le projetJava: Scanner ne peut pas lire le fichier txt

J'utilise NetBeans. Toute aide est appréciée!

// Openning hurricane data file 


try{ 
    System.out.println("Openning hurricane data file..."); 
    Scanner fileInput = new Scanner(new File("hurricane.txt")); 
    } 
    catch(FileNotFoundException e){ 


    System.err.println("FileNotFoundException: " + e.getMessage()); 
     return; 
    } 
    System.out.println("File opened successfully..."); 
    System.out.println("Reading file..."); 

C'est la sortie je reçois:

run: 
Openning hurricane data file... 
FileNotFoundException: hurricane.txt (The system cannot find the file specified) 
BUILD SUCCESSFUL (total time: 1 second) 
+1

Je pense que vous n'avez pas votre hurricane.txt sur classpath. Essayez de l'ajouter sur classpath – dpassy

+3

Post le résultat de 'System.out.println (nouveau fichier (" hurricane.txt "). GetAbsolutePath());' et voyez si vous avez vraiment un fichier à cet endroit. – Pshemo

+0

La seule explication possible serait que le nom n'est pas le même ou que le fichier ne se trouve pas dans le bon répertoire. Les réponses ci-dessous devraient vous aider. Oh, et n'oubliez pas de fermer le flux après avoir fini avec. Vous pouvez simplement utiliser l'instruction Try-With-Resource fournie par Java. – Nikita

Répondre

0

Soit spécifier le chemin complet ou placez le fichier texte dans le répertoire de travail de l'application, que vous pouvez imprimer comme suit:

final String workingDir = System.getProperty("user.dir"); 
System.out.println("Current working directory: " + workingDir); 

Assurez-vous ensuite que le fichier texte se trouve dans ce répertoire spécifique et que le nom de fichier et l'extension correspondent.

0

J'ai eu le même problème hier. L'erreur que j'ai faite est que j'ai créé/ajouté un fichier et je l'ai appelé junkfile.txt. Mais parce que je l'ai fait, le nom était junkfile.txt.txt parce que l'extension .txt est ajoutée automatiquement, ce qui fait que junkfile.txt ne fonctionne évidemment pas et j'ai eu une exception filenotfound qui m'a pris du temps pour comprendre . Donc peut-être que si vous utilisez hurricane.txt.txt cela fonctionnera.

Éditer: si vous avez créé un fichier texte dans le répertoire de travail de netbeans et que vous l'avez appelé hurricane.txt, il apparaîtra dans la liste des projets sous le nom hurricane.txt.txt.

+0

Je me suis assis avec mon professeur aujourd'hui pendant 30 minutes avant de créer le "Scanner fileInput" avant la ligne "try". J'espère que ceci aide quelqu'un d'autre. – buick

0

essayer

File f = new File(this.getClass().getResource("hurricane.txt").toExternalForm());