Heim >Java >javaLernprogramm >Wie kann ich Fehler „Pfad nicht gefunden' beim Lesen von Dateien mit relativen Pfaden in Java vermeiden?
Lesen von Dateien aus relativen Pfaden in Java: Beheben des Problems „Pfad nicht gefunden“
In Java Zugriff auf Dateien über relative Pfade mit Java Bei .io.File kann manchmal der Fehler „Das System kann den angegebenen Pfad nicht finden“ auftreten. Dies kann beim Umgang mit Dateien auftreten, die sich in verschiedenen Paketen oder JARs befinden. Um dieses Problem zu lösen, sind alternative Ansätze erforderlich.
Lösung 1: Zugriff auf Dateien über Classpath
Anstatt relative Pfade in der Datei zu verwenden, ist es besser, die Datei von zu beziehen der Klassenpfad. Dadurch ist die Unabhängigkeit vom aktuellen Arbeitsverzeichnis gewährleistet. Vorausgesetzt, dass sich die Datei im selben Paket befindet wie die Klasse, die darauf zugreift, kann der folgende Code verwendet werden:
<code class="java">URL url = getClass().getResource("ListStopWords.txt"); File file = new File(url.getPath());</code>
Lösung 2: InputStream verwenden
Wenn gewünscht Das Ergebnis besteht darin, einen InputStream für die Datei zu erhalten. Der direkte Zugriff über den Klassenpfad ist effizienter:
<code class="java">InputStream input = getClass().getResourceAsStream("ListStopWords.txt");</code>
Überlegungen zu Eigenschaftendateien
Wenn es sich bei der Datei um eine handelt Eigenschaftendatei (die Schlüssel-Wert-Paare enthält) kann der InputStream verwendet werden, um die Eigenschaften direkt zu laden:
<code class="java">Properties properties = new Properties(); properties.load(getClass().getResourceAsStream("ListStopWords.txt"));</code>
Hinweis für statische Kontexte
Beim Zugriff auf die Datei Ersetzen Sie aus einem statischen Kontext getClass() durch YourClass.class oder FileLoader.class in den Codebeispielen oben.
Durch den Einsatz dieser Techniken kann der Zugriff auf Dateien über relative Pfade in Java zuverlässig erfolgen, wobei der „Pfad“ vermieden wird Fehler „Nicht gefunden“ und Gewährleistung der Unabhängigkeit der Anwendung vom aktuellen Arbeitsverzeichnis.
Das obige ist der detaillierte Inhalt vonWie kann ich Fehler „Pfad nicht gefunden' beim Lesen von Dateien mit relativen Pfaden in Java vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!