Projektdateisystem:Relative Pfad Klärung
Project
|
-----bin
|
-----.settings
|
-----src
|
-----(default package)
|
-----Main.Java
|
-----neuropol x rg.ttf
Ich habe ein Programm, das eine Schriftart wie so setzt:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
ge.registerFont(Font.createFont(Font.TRUETYPE_FONT,
getClass().getResourceAsStream("/neuropol x rg.ttf")));
Welche perfekt funktionieren. Ich versuche herauszufinden, wie der relative Pfad funktioniert. So ist die neuropol x rg.ttf
Datei in meinem src
Ordner sitzen, so, um Sie arbeiten würde denken, dass der Weg sein sollte:
...getResourcesAsStream("/src/neuropol x rg.ttf")
Aber es funktioniert gut, wie ich es an der Spitze der Post haben. Zu meinem Verständnis sollte die relative Pfade Wurzel, wo der Code aus ausgeführt wird, die in diesem Fall ist mein Projekt-Ordner, die ich durch das Einfügen der folgenden Zeile bestätigt haben, direkt unter dem die Schriftart erstellt:
System.out.println(System.getProperty("user.dir"));
Diese line gibt den Projektordner zurück. Wie funktioniert es, ohne den Ordner src zum Pfad hinzuzufügen? Bin ich verwirrt, wo die Wurzel des relativen Pfades ist?
Wenn Ihr Code kompiliert wurde, existiert der 'src /' Ordner nicht mehr. –