Je crée un navigateur de fichiers de base et je veux savoir comment obtenir le répertoire racine par défaut. Je sais que java.io.File.listRoots()
donne toutes les racines (pour moi c'est A:\, C:\, D:\, E:\, F:\, G:\, H:\, I:\, L:\ T:\, U:\, X:\, Y:\, Z:\
), mais je veux celui que l'utilisateur utilise principalement (c'est-à-dire celui avec le système d'exploitation dessus) donc je sais d'où commencer la navigation.Obtenir le répertoire racine par défaut en Java
Répondre
Obtenir le système d'exploitation partition racine est seulement une chose sur Windows
depuis le Unix
il est toujours /
.
Par conséquent, le code suivant fonctionne pour Windows
seulement:
System.getenv("SystemDrive");
Il obtient la valeur variable d'environnement SystemDrive
. Cela devrait toujours retourner la partition racine du système d'exploitation, par ex. C:
.
Je ne sais pas si cela est de toute aide, mais vous pouvez essayer:
import javax.swing.filechooser.*;
FileSystemView.getFileSystemView().getRoots()[0];
ou
FileSystemView.getFileSystemView().getHomeDirectory();
ou
System.getProperty("user.dir");
Pour le dernier extrait, vous pouvez obtenir le répertoire racine en naviguant vers le haut en utilisant getParent() jusqu'à ce que null
soit renvoyé.
public static String rootDirectory(){
return File.listRoots()[0].getAbsolutePath();
}
est-ce garanti de ne pas être, disons, le lecteur 'A' dans Windows si j'ai un lecteur de disquette joint? – Supuhstar
@Supuhstar, je viens de passer un test, et la réponse est non. Sous Windows, il renvoie la liste des racines par ordre alphabétique, donc "A: \" est le premier. De plus, selon les docs (https://docs.oracle.com/javase/7/docs/api/java/io/File.html#listRoots()): "Une plate-forme Java particulière peut supporter zéro ou plus. systèmes de fichiers hiérarchiquement organisés. " En d'autres termes, un déréférencement aveugle de l'index 0 peut provoquer une exception ArrayIndexOutOfBoundsException. Cette réponse n'est donc pas complètement plate-forme et non fiable. –
- 1. Comment obtenir le répertoire racine sur PHP
- 2. Obtenir le répertoire racine de scons
- 3. Répertoire de compilation Java par défaut
- 4. Reconnaissant le répertoire racine en PHP
- 5. Configurer un site IIS par défaut pour le répertoire non-racine?
- 6. Rails irb répertoire par défaut
- 7. Modifier le répertoire WCF par défaut
- 8. SSH dans le répertoire spécifié par défaut?
- 9. Obtenir le répertoire racine dans l'application ASP Classic
- 10. Répertoire par défaut de NSKeyedArchiver
- 11. Obtenir le nom du répertoire dans Java
- 12. comment extrayez-vous le répertoire racine?
- 13. Ant annuaire qui inclut le répertoire racine
- 14. Java, encodage par défaut
- 15. Rails Chemin du répertoire racine?
- 16. Comment obtenir le chemin racine en JavaScript?
- 17. SQL Server racine Répertoire
- 18. Les polices par défaut en Java
- 19. Création d'un constructeur par défaut en Java
- 20. Modifier le port RMI par défaut (Java)
- 21. Mémoire de masse Répertoire par défaut
- 22. WIX: répertoire par défaut dans WixUI_InstallDir
- 23. Comment obtenir le WebApplicationContext par défaut?
- 24. FXRuby FXFileDialog boîte répertoire par défaut
- 25. Obtenir la valeur par défaut pour les types primitifs Java
- 26. Empêcher le changement automatique du répertoire par défaut
- 27. Comment obtenir le numéro de port de l'imprimante par défaut en Java
- 28. Mode omniprésent pour obtenir le répertoire racine d'une application en cours d'exécution via C#
- 29. Répertoire de travail eclipse par défaut
- 30. répertoire racine serveur ASP.NET interne
Liens à la fois cassé – IanGilham
@IanGilham Je pense que vous vouliez commenter une autre réponse – Supuhstar
Oui, mon mauvais. Vous semblez avoir trouvé celui que je voulais dire. – IanGilham