2012-11-27 17 views
6

Sto usando Eclipse per compilare ed eseguire i miei codici java.Eccezione nel thread "main" java.io.FileNotFoundException: Errore

Ecco l'errore che sto ottenendo.

Exception in thread "main" java.io.FileNotFoundException: file.txt (The system cannot find the file specified) 
    at java.io.FileInputStream.open(Native Method) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at java.util.Scanner.<init>(Unknown Source) 
    at helloworld.main(helloworld.java:9) 

Ecco il mio codice

import java.io.File; 
import java.io.IOException; 
import java.util.Scanner; 


public class helloworld { 

    public static void main(String[] args) throws IOException { 
     Scanner KB = new Scanner(new File("file.txt")); 
     while (KB.hasNext()) { 
      String line = KB.nextLine(); 
      System.out.println(line); 
     } 

    } 
} 

File.txt
ho creato file.txt nella stessa cartella nel mio progetto.

+0

Il file si trova direttamente nella cartella del progetto? –

+0

è sotto SCR, ho messo uno sotto il cestino, perché scr non ha funzionato. – Mowgli

+1

Prova a stampare 'new File (" file.txt "). Exists()' Sta producendo 'true'? in caso contrario, prova a stampare 'new File (" file.txt "). getAbsoluteFile()' È quello che ti aspettavi? – amit

risposta

19

Il file deve essere direttamente nella cartella del progetto e non in un'altra sottocartella.

Quindi, se la vostra cartella del progetto è MyProject, è struttura delle cartelle (non completare però) dovrebbe essere come: -

MyProject +- src + 
      |  | 
      |  +-- Your source file 
      +- file.txt 

Non dovrebbe essere cartella.


Oppure, si può dare il seguente percorso relativo alla cartella del progetto per la ricerca di file nel src folder: -

new File("src/file.txt"); 
+0

Questo funziona per me. + a @Rohit –

+0

Ah brillante. Non ho indovinato. – gbhall

5

Prova a passare il percorso completo del file, dicono:

new File("/usr/home/mogli/file.txt") 

Oppure, se siete in Windows:

new File("C:/Users/mogli/docs/file.txt") 
2

O seguire @rohit approccio giainisti o dare il assoluto percorso per il vostro file di come:

Scanner KB = new Scanner(new File("C:/JsfProjects/Project/file1.txt")); 
      while (KB.hasNext()) { 
       String line = KB.nextLine(); 
       System.out.println(line); 
      } 
+1

+1 Considera di usare la barra di avanzamento '/' invece della barra rovesciata \. –

+0

@ Eng.Fouad grazie, aggiornerò la risposta :) – PermGenError

1

In Windows provare a dare vero e proprio percorso come questo

"C:\\Users\\mogli\\docs\\file.txt" 

Ha funzionato per me.

Problemi correlati