123 votes

Quand le Système.getProperty("java.io.tmpdir") return "c:\temp"

Juste curieux de savoir quand System.getProperty("java.io.tmpdir") retours "c:\temp". Selon le java.io.Fichier Java Docs-

La valeur par défaut temporaire-répertoire du fichier est spécifié par la propriété système java.io.tmpdir. Sur les systèmes UNIX, la valeur par défaut de cette propriété est généralement "/tmp ou/var/tmp"; sur les systèmes Microsoft Windows, il est généralement "c:\temp". Une valeur différente peut être donné à ce système de propriété lorsque la machine virtuelle Java est invoqué, mais des modifications du programme pour cette propriété ne sont pas la garantie d'avoir un effet sur le répertoire temporaire utilisé par cette méthode.

Mais dans mon cas

System.out.println(System.getProperty("java.io.tmpdir"));

Retourne toujours-

C:\Users\admin\AppData\Local\Temp\ i.e. %TEMP%

Dans quelles conditions il sera de retour "c:\temp"?

ÉDITÉ: Si je change de %TEMP% à C:\Temp alors j'aurai C:\Temp, droit? Mais la documentation montre c:\Temp au lieu de C:\Temp.

142voto

Joshi Points 1278

Dans MS Windows le répertoire temporaire est défini par la variable d'environnement TEMP. Dans XP, le répertoire temporaire a été défini par utilisateur Local Settings\Temp.

Si vous modifiez votre variable d'environnement TEMP C:\temp, vous obtenez la même lorsque vous exécutez :

System.out.println(System.getProperty("java.io.tmpdir"));

42voto

Peter Lawrey Points 229686

Si vous définissez

-Djava.io.tmpdir=C:\temp

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X