C'è un piccolo inghippo, temo: il nome del file, per assicurarmi che non sia sovrascritto (viene salvato sempre nella cartella del file .jar), è parametrizzato sui dati di input. Devo vedere se posso comporre il nome del file anche in questo contesto.
Non ha molta importanza se è "cablato" nel sorgente (come nel mio breve esempio) o determinato/inserito in altro modo: se è relativo (alla directory corrente), java.io.File SA risolverlo.