2017-05-12 1 views
0

Ich lese gerade eine TXT-Datei in Java, die in einem Paket mit dem Scanner-Objekt befindet.Wie bekomme ich den Pfad zum Paket in Eclipse (Java)

den Speicherort der Datei erhalten verwende ich eine schnelle und schmutzige Methode:

File currentDirectory = new File(new File(".").getAbsolutePath()); 
String location = currentDirectory.getAbsolutePath().replace(".", "")+"\\corefiles\\src\\filereadingexample\\"; 
  • Gibt es einen besseren Weg, dies zu tun?

Ich würde gerne meinen Code verbessern.

Grüße J

+0

Ja aktuellen Diretory Weg Get. Suchen Sie in Ressourcen (die den Klassenpfad verwenden) –

+2

Mögliche Duplikate von [So lesen Sie wirklich Textdatei vom Klassenpfad in Java] (http://stackoverflow.com/questions/1464291/how-to-really-read-text-file- aus Klassenpfad in Java) – Kapep

Antwort

0

Verwenden Sie eine URL

URL resource = getClass().getResource("/path/to/text/file.txt"); 

Als Pfad, da die Textdatei in einem Paket, das Paket Struktur verwenden. Zum Beispiel sei angenommen Ihre Datei (myfile.txt) innerhalb

com.myproject.files 

Paket, sollte Ihr Weg

"/com/myproject/files/myfile.txt" 

sein (beachten Sie die führenden Schrägstrich. Es ist notwendig ist)

Jetzt können Sie erstellen Eine Datei mit der URL

Die "resource.getFile()" gibt auch den absoluten Pfad zur Datei zurück.

Hoffnung hilft diese

0

String currentDirPath = System.getProperty("user.dir"); 

String ohterPackages = currentDirPath + File.separator + "filereadingexample\\fileName.txt"; 

Benutzerverzeichnis

String homePath = System.getProperty("user.home"); 
Verwandte Themen