getResource()

Status
Nicht offen für weitere Antworten.

AWG

Mitglied
Hallo,

ich habe ein Problem mit getResource.
Wenn ein Properties-Files ausgelesen wird, liegt dieses im Pfad der Klasse:

Java:
InputStream PathDB = getClass().getResourceAsStream("Test.properties");

Das funktioniert ohne Probleme.
Nun soll in das Properties-File geschrieben werden.
Dazu wird der Klassenpfad benötigt:

Java:
String resource = "/Test.properties";
URL url = this.getClass().getClassLoader().getResource(resource) ;
 
        if (url == null){
        	 throw new Error("could not load "+ resource );
        }

In diesem Fall ist immer
Java:
url = null
Wie bekommt man den sonst den Klassepfad mit getRessource, so das es mal nicht null ist.
Wenn die Variable
Java:
resource
verändert wird, kommt die Fehlermeldung, dass
der angegeben Pfad nicht vom System gefunden werden kann.
Ein Hinweis darauf das der Pfad nicht falsch sein kann oder??
Aber wieso immer null ??

Habt ihr eine Antwort darauf??

LG AWG
 
M

maki

Gast
Das funktioniert ohne Probleme.
Nun soll in das Properties-File geschrieben werden.
Solange die Propertydatei nicht in einem Jar ist sondern als Datei aim Dateisystem vorliegt, kein Problem.
Im Falle einer Jar: keine Chance
 

AWG

Mitglied
warum kann ich für eine InputStream mit getResource() auf den Pfad zugreifen und so nicht??
Ist schon bescheiden, auf der einen Seite diese Funktionalität zum lesen, aber schreiben geht nicht...

Gibt es eine andere möglichkeit etwas zu schreiben was in einem JAR liegt??
 

mvitz

Top Contributor
Weil es beim lesen die Resource gibt und beim schreiben die Datei noch nicht existiert, demnach "null" ist.
 
M

maki

Gast

AWG

Mitglied
Danke
wo kann infos zum entpacken, schreiben und verpacken von jar(zip-) files finden??
Würde es gerne mal ausprobieren.
 
M

maki

Gast
Danke
wo kann infos zum entpacken, schreiben und verpacken von jar(zip-) files finden??
Würde es gerne mal ausprobieren.
Dir ist klar dass dann eine andere Jar existiert?
Die Jar aus der deine Anwendung läuft kann nicht verändert werden während die Anwendung läuft.

Vielleciht suchst du ja Preferences...
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben