Persistir alterações em properties em programa executado pelo .jar

Pessoal, fiz uma aplicação Swing e após gerar o .jar não consegui mais manipular arquivos. O problema foi solucionado com um getResourseAsStream() para o .properties e getResourse() para imagens, Após clicar no .jar o programa pega as propriedades do .properties e os botões mostram os ícones. Beleza!
O GetResourseAsStream retorna um InputStream, o que dispensa o uso de um File(‘src/…’).
O problema é que para persistir as alterações no properties eu necessito de um OutputStream que pede um File como parâmetro. Como a aplicação roda pelo jar, ele não reconhece o caminho do File(’…///…’).
Alguém sabe uma forma de persistir no properties com algum tipo de getResourseAsStream que retorne u OutputStream, ou alguma forma válida de persistir no properties estando em uma aplicação executada pelo .jar? Os tutoriais do GUJ sobre properties e manipulação de arquivos não referiram-se sobre casos de aplicações compiladas em arquivos executáveis.
Alguém tem algum exemplo?

Eu posso estar enganado (e nesse caso, alguém me corrija), mas acho que isso você não pode fazer… Está no JAR? Então é read-only, meu filho. A não ser que você possa (e lhe seja viável) usar java.util.zip.* aqui.

Arquivos de configuração “editáveis” são como recursos externos da aplicação, e mesmo que você possa editar arquivos em um .jar, eu acredito que seja melhor distribuí-los separadamente… (por várias razões).

Just my two cents!

Um properties só funciona se eu colocar o caminho absoluto no parametro do file, existe alguma forma de ter este properties fora do jar mas dentro da aplicação sem ter que fixar o properties sempre no mesmo lugar para que o cliente descompacte-o onde ele quiser?
Afinal, como foço para usar um properties em um programa que roda pelo .jar (qualquer forma é bem vinda… :lol: )

Se sua configuração é por usuário e não por máquina, e se você usar Java 1.4 ou posterior, você pode usar a classe java.util.prefs.Preferences. Ela guarda configurações no Registry (no caso do Windows) ou em arquivos XML (no caso do Linux).