Hi,
Die Datei soll immer am selben Ort innerhalb der Package-Struktur sein,
Auf welcher Baumebene beginnt die Package-Struktur? (gemäß Java-Konvention erwarte ich nach einem Ordner namens "de"..).
also z.B.
c:/bla/blub/MeinProgramm/Properties/user.properties
aber auch
c:/wherever/MeinProgramm/Properties/user.propertiesNur wie bekomme ich diesen FileOutputStream auf diese Datei?
Annahme: "MeinProgramm" ist das Top-Level Package.
// holen der URL
URL url = getClass().getResource("/MeinProgramm/Properties/user.properties");
hinweis: wenn die Klasse, die die Generation des OutputStreams übernimmt, im Package Properties liegt, genügt der Parameter "user.properties" (ohne führendes "/"!!!)
// String Repräsentation der entsprechenden Datei
String filePath = url.getFile();
// OutputStream erzeugen
OutputStream os = new FileOutputStream(filePath);
if (url.getProtocol().indexOf("jar") == -1 ) {
myProperties.store(os....);
}
Dies ist eine (ungetestete) Möglichkeit.
Viele Grüße,
Martin Jung