Datei nicht gefunden, obwohl sie im Dateipfad ist.

Antony64bit

Mitglied
Hallo Leute, ich bin ein Anfänger und daher diese Frage:

Java:
String getInput() throws IOException{
		
		Scanner sc = new Scanner(new File("language.txt"));
		
		String input = "";
		
		while(sc.hasNext()){
			
			input += sc.next();
			
		}
		sc.close();
		return input;
	}


Fogender Fehler Tritt auf : java.io.FileNotFoundException

obwohl die Datei im Dateipfad ist.

Und ich wollte Fragen : Was habe ich Falsch gemacht ?

Auf eine Antwort würde ich mich Freuen.
 
Zuletzt bearbeitet:
obwohl die Datei im Dateipfad ist.
Das verstehe ich nicht.

Du versuchst die Datei language.txt ohne Pfadangabe anzusprechen. Das ist beim Start (natürlich) das aktuelle Verzeichnis und da ist die Datei nicht.
Startest du das via Eclipse kannst du das in der RunConfiguration/Arguments/Working Directory festlegen.
Besser ist es, die Umgebungsdinge wie aktuelles Directory, o.ä. zu entfernen und stattdessen über den ClassPath zu gehen,
Java:
	public String getInput() {
		String input = "";
		InputStream inputStream = getClass().getResourceAsStream("language.txt");
		Scanner sc = new Scanner(inputStream);
		while (sc.hasNext()) {
			input += sc.next();
		}
		sc.close();
		return input;
	}
Somit muss das Directory in dem sich die Datei befindet im Classpath liegen. Diesen Pfad kannst du beim Aufruf festlegen
Java:
java -cp <classpath> Programm
 
Zuletzt bearbeitet:
Java:
Sie liegt im Verzeichnis Projekt\...\src\...
Somit liegt die Datei in einem Verzeichnis. :lol:

Bau bitte mal meine Zeile ein
Java:
InputStream inputStream = getClass().getResourceAsStream("language.txt");
UND kopiere die language.txt in das gleiche Verzeichnis, in dem deine Klasse steht.
 

Zurück
Oben