Pfadangabe

Morgen an alle!
Habe da so ein Problem mit meiner Pfadangabe!
Ich habe folgendes
src da drin package test mit Klasse test
dann habe ich "nicht im src sonderndarunter den Ordner Bilder
wie greife ich nun auf ein bild zu wo im ordner Bilder ist?
test.png
 
Zuletzt bearbeitet:
Ne so funktioniert es nicht habe ich natürlich schon probiert auch mit ../Bilder/IMG_(1).jpg
 
Zuletzt bearbeitet:
Moin,

kommt denn irgendeine Fehlermeldung oder wird einfach "nur nicht geladen" ???:L

Mal so ganz in Blaue geschossen: Klammen in Dateinamen :eek:

Gruß
Klaus
 
Guten Morsche,


versuche mal das hier ( Beispiel )=>
Java:
File file = new File ("C:/./Bilder/");
würde mir so spontan einfallen :)

Hoffe das hilft etwas weiter.

Grüsse Breas
 
sorry ich finde den Fehler einfach nicht
ImageIcon img = new ImageIcon("./Bilder/IMG_(1).JPG");
so funktioniert es einfach nicht!
 
Ich finde den Fehler einfach nicht
ImageIcon img = new ImageIcon("./Bilder/IMG_(1).JPG");
so funktioniert es nicht bei mir
 
Zuletzt bearbeitet:
Woher weißt du denn, dass das Bild nicht geladen wird? Bekommst du es nicht ausgegeben? Vielleicht solltest du mal etwas Code posten...
 
Moin,

wenn ich mir den Screenshot aus dem ersten Post richtig anschaue, hege ich die Vermutung, dass sich möglicherweise zwischen dem Unterstrich und der öffnenden Klammer noch ein Leerzeichen befinden könnte .....

Ich habe meine Pics allerdings immer auch im gleichen Verzeichnis wie die jeweilige Source liegen und greife dann bspw. so drauf zu:
Java:
// gegeben bspw. folgendes  Package
package aaa.bbb.ccc;
// Bilder im Pfad: aaa/bbb/ccc/MyClass

class MyClass
{
// ...
myLabel.setIcon( new ImageIcon( MyClass.class.getResource("myPic.png")) );
Macht es (zumindest mir) einfacher ... gerade auch fürs SVN :)

Gruß
Klaus
 
Zuletzt bearbeitet:
einfach mal in einen try/catch block legen und stacktrace ausgeben lassen ? oder einfach mal debuggen und schauen mit was er das imageIcon belegt ?
 
Hallo zusammen. Ich habe auch mal eine Frage bzgl. Pfadangaben. Konkret geht es da um 2 Fälle.

1. Fall - Hintergrundmusik für eine Stage
Pfadangabe ist über einen Absoluten Pfad. Das Problem ist, das auf dieses Projekt noch andere Personen zugreifen und die ja mit meinen absoluten Pfad nix anfangen können. Aber bei einer relativen Pfadangabe wirft er mir immer eine Exception. Was mache ich denn da falsch?

Java:
//absoluter Pfad

    //Media musicFile = new Media("file:/Users/h0ax3s/Documents/workspace/Monopoly/FXMonopoly/GameOfThronesTheme.mp3");

    //relativer Pfad

    Media musicFile = new Media("file:../FXMonopoly/GameOfThronesTheme.mp3");



    MediaPlayer mediaPlayer = new MediaPlayer(musicFile);
Java:
Exception in thread "Thread-4" java.lang.IllegalArgumentException: URI is not hierarchical

    at java.base/java.io.File.<init>(File.java:418)

    at javafx.media/com.sun.media.jfxmedia.locator.ConnectionHolder$FileConnectionHolder.openFile(ConnectionHolder.java:217)

    at javafx.media/com.sun.media.jfxmedia.locator.ConnectionHolder$FileConnectionHolder.<init>(ConnectionHolder.java:176)

    at javafx.media/com.sun.media.jfxmedia.locator.ConnectionHolder.createFileConnectionHolder(ConnectionHolder.java:63)

    at javafx.media/com.sun.media.jfxmedia.locator.Locator.createConnectionHolder(Locator.java:608)

    at javafx.media/com.sun.media.jfxmediaimpl.MetadataParserImpl.run(MetadataParserImpl.java:102)
2. Fall - fxml-Datei aus anderem Package laden
Folgende Packagestruktur ist vorhanden:
  1. monopoly.ansicht.hauptmenue
  2. monopoly.ansicht.regelwerk
Im 1. Package erstelle ich über eine Methode eine neue Scene
Java:
@FXML

    void clickButRegeln(ActionEvent event) throws IOException {

       

        Parent regelwerkParent = FXMLLoader.load(getClass().getResource("/Users/h0ax3s/Documents/workspace/Monopoly/FXMonopoly/src/monopoly/ansicht/regelwerk/Regelwerk.fxml"));

        Scene regelwerkScene = new Scene(regelwerkParent);



        Stage window = (Stage) ( (Node)event.getSource()).getScene().getWindow();

        window.setScene(regelwerkScene);

        window.show();

    }
Die Regelwerk.fxml liegt allerdings in Package Nummer 2.

Hier habe ich aktuell auch einen absoluten Pfad und benötige eigentlich einen relativen, allerdings funktioniert es hier auch nicht mit dem absoluten Pfad.

Java:
Caused by: java.lang.NullPointerException: Location is required.
Könnte mir hier vllt jmd weiterhelfen?

Danke und VG Marco

P.s.: Ich nutze einen Mac, falls das eine Rolle spielt
 
Die Namen ("Pfadangaben") von Class#getResource() bzw. Class#getResourceAsStream bezeichnen Ressourcen, die vom jeweiligen ClassLoader geladen werden. Sie beziehen sich also nicht auf das Dateisystem sondern auf die "Pakete" des Programms. Werden sie ohne führenden '/' angegeben, wird davon ausgegangen, dass sich die Ressource im selben Paket wie die Klasse befindet, für getResource() bzw. getResourceAsStream() aufgerufen wurde.
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben