Hvornår returnerer System.getProperty(java.io.tmpdir) c:\temp
I MS Windows er den midlertidige mappe sat af miljøvariablen TEMP
. I XP blev den midlertidige mappe sat pr. bruger som Local Settings\Temp.
Hvis du ændrer din TEMP-miljøvariabel til C:\temp
, så får du det samme når du kører :
System.out.println(System.getProperty("java.io.tmpdir"));
Hvis du indstiller
-Djava.io.tmpdir=C:\temp
På den ene side, når du ringer til System.getProperty("java.io.tmpdir")
instruktion kalder Java Win32 API's funktion GetTempPath
.Ifølge MSDN:
GetTempPath-funktionen kontrollerer, om der findes miljøvariabler i følgende rækkefølge og bruger den første sti fundet:
- Stien angivet af TMP-miljøvariablen.
- Stien angivet af TEMP-miljøvariablen.
- Stien angivet af miljøvariablen USERPROFILE.
- Windows-biblioteket.
På den anden side, tjek venligst de historiske årsager til hvorfor TMP
og TEMP
sameksistere. Den er virkelig værd at læse.