# Pfad richtig angeben



## Helgon (3. Jan 2012)

Hey, ist mir bisschen peinlich, aber ich hab grad ka was ich noch ausprobieren könnte:

Ich hab


```
URL picUrl = getClass().getClassLoader().getResource(path);
		
		try {
			src = ImageIO.read(picUrl);
```

Die Dateien lagen bis jetzt im bin Ordner, aber nachdem ich 2x ausversehn auf Build gedrückt hab, muss ich das nun mal ändern xD

Ordner Struktur

workspace/Programm/
src​ bin​res​
und ich würd gern den Pfad so angeben, dass es auf res zeigt.

Ich hab folgendes probiert (als path)


res/bla.png <- so wäre es ja, wenn der Ordner im /bin/ liegen würde
/res/bla.png
../res/bla.png

und noch viel mehr schwachsinniges, aber nix klappt. 

Grüße


----------



## André Uhres (3. Jan 2012)

Helgon hat gesagt.:


> Ordner Struktur
> 
> workspace/Programm/
> src​ bin​res​
> und ich würde gern den Pfad so angeben, dass es auf res zeigt.



Hallo Helgon,

wenn das Bild nicht innerhalb der package Struktur liegt, dann musst Du wohl den absoluten Pfad angeben. Es ist dann ein externes Bild. Wenn "res" aber innerhalb "src" liegt, müsste dies funktionieren:
[c]getClass().getResource("/res/bla.png")[/c].

Gruß,
André


----------



## Gast2 (3. Jan 2012)

> wenn das Bild nicht innerhalb der package Struktur liegt, dann musst Du wohl den absoluten Pfad angeben.


Es reicht auch ein Pfad relativ zum working directory. Das working directory kannst du dir aus der property "user.dir" holen. Das sollte aber standardmäßig auf deinem Projektordner liegen.

Du solltest das Bild also so laden können:

```
ImageIO.read(new File("res/bla.png"));
```


----------



## Helgon (3. Jan 2012)

Und wenns später ne jar ist, wie siehts dann aus, stimmt der Pfad dann noch?


----------



## Helgon (3. Jan 2012)

André Uhres hat gesagt.:


> Hallo Helgon,
> 
> wenn das Bild nicht innerhalb der package Struktur liegt, dann musst Du wohl den absoluten Pfad angeben. Es ist dann ein externes Bild. Wenn "res" aber innerhalb "src" liegt, müsste dies funktionieren:
> [c]getClass().getResource("/res/bla.png")[/c].
> ...



Ach hab das überlesen, sry.

Ist das den ok, dass der res Ordner in den src Ordner reinkommt? Im /bin soll, soweit ich das verstanden hab, ja nix liegen (abgesehn davon das es beim Builden gelöscht wird xD).


----------



## André Uhres (3. Jan 2012)

Helgon hat gesagt.:


> Ist das den ok, dass der res Ordner in den src Ordner reinkommt?



Ich sehe da keine Problem.

Gruß,
André


----------



## André Uhres (3. Jan 2012)

Helgon hat gesagt.:


> Und wenns später ne jar ist, wie siehts dann aus, stimmt der Pfad dann noch?



Es bleibt immer ein externes Bild. Wenn man sich auf die "user.dir" basiert, muss "res" im selben Verzeichnis liegen, wie die jar Datei.

Gruß,
André


----------



## Helgon (3. Jan 2012)

Alles klar, danke


----------

