2013-01-25 7 views
5

Wie öffne ich eine Datei, die nicht im aktuellen Verzeichnis sondern in einem anderen Verzeichnis vorhanden ist. Zum Beispiel habe ich einen Ordner F:/test und meine Datei ist in F: /test/test2/doit.txt und D:/test3/doit2.txtWie öffne ich die Datei in einem anderen Verzeichnis in Java?

Was in Pfad im Parameter einzugeben, während File-Objekt zu machen, wie folgt:

File f = new File("/test2/doit.txt"); 
+0

Haben Sie es vor dem Posten hier gegoogled? – Abubakkar

+0

mögliches Duplikat von [Wie scanne ich eine Datei in einem anderen Verzeichnis in Java?] (Http://stackoverflow.com/questions/2007503/how-to-scan-a-file-in-a-different-directory-in) -java) –

+0

den vollständigen Dateinamen setzen –

Antwort

6

Unabhängig davon, welches Betriebssystem eine Datei kann beispielsweise wie demo.txt

File file = new File("/d:/user/demo.txt"); 

in Windows zugegriffen werden, wo die Datei auf D:\user\ und

File file = new File("/usr/demo.txt"); 

in *nix oder *nux wo Die Datei befindet sich unter /usr/

Auch eine Datei, wenn relativ zugegriffen werden soll, kann als getan werden (consid das Windows-Beispiel Ering):

nehme an, ich bin in den Songs Verzeichnis in D: wie:

D:/ 
| 
|---songs/ 
| | 
| |---Main.java 
| 
|---user/ 
    | 
    |---demo.txt 

und der Code innerhalb Main.java, dann wird der folgende Code funktioniert.

File file = new File("../user/demo.txt"); 
+0

Sie nicht Schrägstriche in File() Konstruktor –

+4

Ich muss nicht. Sie sind Schrägstriche. – TechSpellBound

-3

die folgenden Versuchen.

fr = new FileReader ("C:/Users/user/Desktop/java/test.txt"); 
+0

Ok, also müssen die Pfade in java.io absolut und nicht relativ sein. Thankx –

+3

Das Problem mit dem Ausdrücken des Pfades so, stellt sicher, dass die Anwendung nur unter Windows ausgeführt werden kann. Java soll plattformübergreifend sein. Linux hat kein C: -Laufwerk. – NickJ

+1

Jetzt kann ich es lesen, das ist eine schlechte Antwort. Das OP sollte herausfinden, wie man mit relativen Verzeichnissen arbeitet. Fügen Sie auch keine Anreden und Sigs hinzu. in Antworten (oder Fragen). Als Kommentare sind sie Lärm. Als Teil eines Q oder A, wirklich störendes Geräusch. –

2

Unter der Annahme, dass Sie Ihr Programm von F ausgeführt werden:/Test, den Sie so etwas wie verwenden sollte:

File f = new File("./test2/doit.txt"); 

Mit fest codierten absoluten Pfade ist keine gute Idee - Ihr Programm funktioniert möglicherweise nicht, wenn der Benutzer hat eine andere Verzeichnisstruktur.

+0

Warum absoluter Weg ist keine gute Idee? –

+1

@NickJ erklärte auf der angenommenen Antwort. Wenn Sie den Kommentar nicht verstehen können, sollten Sie vielleicht (ein bisschen suchen &) eine neue Frage stellen. –

+0

für Plattform Unabhängigkeit zu einem gewissen Grad .. – TechSpellBound

Verwandte Themen