relativer Pfad?

schuetzejanett

Erfahrenes Mitglied
Hallo,

ich entwickle eine rcp app, dafür hab ich mir eine proberties datei angelegt. diese möchte ich im programm laden, wie komme ich jetzt an das verzeichnis der datei damit ich sie öffnen und laden kann , ich weiß wosie in meinem projektverzeichnis liegt also auf gleicher ebene wie scr und lib. Da das projektverzeichnis oder wenn ich sie exportiert habe der programmordner ja irgendwo auf dem rechner liegen kann , kann ich keinen absoluten pfad angeben sondern nur einen relativen. Wie gebe ich in java einen relative pfad
 
Hallo,

es müsste eigentlich funktionieren, wenn du den Pfad relativ zu deinem Projektverzeichnis angibst, also eigentlich nur der Name der Properties-Datei ohne Ordner.

MFG

zEriX
 
Hallo kannst du mir dafür mal kurz ein bsp geben , weil ich habe es so versucht und bekomme aber eine file not found exception

Code:
properties.load(new FileInputStream("/preferences.properties"));
 
Du hast es fast richtig, lass nur den "/" am Anfang weg, dann müsste es funktionieren.

MFG

zEriX
 
Nein geht leider immer noch nicht hier ist meine verzeichnistruktur , die klasse die das aufruft befindet sich im package model im scr ordner und die datei wie man sieht im obersten ordner
 

Anhänge

  • projektstruktur.jpg
    projektstruktur.jpg
    53,8 KB · Aufrufe: 32
Ich habe es gerade ausprobiert und es funktioniert genau so wie ich sagte. Ich verstehe nicht warum es bei dir nicht funktioniert.

MFG

zEriX
 
gibt es eine möglichkeit mir alle dateien in dem verzeichis anzuschauen umso herauszufinden wo ich mich befinde und ob die datei da ist
damit ich so merke wo der fehler liegt
 
Code:
public void searchFiles(String searchDir){
    File[] dir = new File(searchDir).listFiles();
    for(int i = 0; i< dir.length(); i++) {
        if(dir[i].exists())
            System.out.println(dir[i].getPath());
    }
}
Schau doch mal mit dieser kleinen Funktion ob die Datei in dem Verzeichnis gefunden wird.

Gruss
d3x
 
@schuetzejanett

Vielleicht wird die Datei beim Ausführen einfach nicht ins Plug-In geladen. Schau Dir den "Plug-In Manifest Editor" an. Auf der Registerkarte "Build" in der "Binary Build" Section muss das Häkchen bei der preferences.properties gesetzt sein.

Grüße
Vincent
 
Zurück