Java Projekt in Windows (7): Wohin mit temporären Dateien?

Hi,
ich habe endlich mein erstes "größeres" Java-Projekt fertiggestellt. Es besteht aus einer .jar, zugehörigem resources - Folder und einer .exe (mit Launch4J erstellt). Nun habe ich auch erfolgreich mit dem Inno Setup Compiler eine Installationsroutine erstellt, die das Projekt auch richtig, in Windows standardmäßig unter C:\Program Files\, entpackt. Das Problem ist nur, dass man meine Dateien (.txt), in denen ich Objekte speichere, nur lesen, aber nicht ändern kann.
Liegt das Projekt auf einem anderen Verzeichnis/Laufwerk, z.B. D:, funktioniert alles einwandfrei, also ist es kein Fehler in meiner Anwendung o.ä.

Meine Frage lautet deshalb: Wo müssen meine Dateien hin um sie ändern zu können, und wie bekomme ich das mit der Installation hin?

Grüße MJ23
 
User-Temp-Verzeichnis:
Java:
System.getenv("TEMP")
Es geht allerdings auch einfacher. Java hat ein Standard-Verzeichnis für Temp-Dateien und auch eine Standard-Funktion, um sie zu erstellen.
Java:
File tempFile = File.createTempFile("file", ".tmp")
Der Pfad der Datei ist dann z.B. c:\users\DespicableMe\Appdata\Local\Temp\file2695968714895551608.tmp

Mit der generierten Nummer wird gleichzeitig auch sichergestellt, dass es keine zweite Datei mit dem gleichen Namen gibt.
Edit: Selbsterklärend:
Java:
tempFile.deleteOnExit()
Sehr sinnvoll für Temp-Dateien.
 
Unter Windows gibt es die Möglichkeit den jeweiligen Pfad eines Users mittels
SET DESTINATION=%USERLOCATION%\MEINPROGRAMM
als Installationspfad festzulegen, ich mache das bei meinen Projekten immer so mittels einer Batchdatei. Funktioniert sehr gut.
Das temp verszeichnis ist für dauerhafte Daten nicht zu empfehlen.
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben