Obtenir le répertoire racine par défaut en Java
Je suis en train de faire un fichier de base de navigateur, et vous voulez 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) donc je sais pas d'où commencer la navigation.
OriginalL'auteur Supuhstar | 2010-12-06
Vous devez vous connecter pour publier un commentaire.
Obtenir le système d'exploitation de la partition racine est seulement une chose sur
Windows
depuis surUnix
c'est toujours/
.Ainsi, le code suivant fonctionne pour
Windows
seulement:Il obtient le
SystemDrive
valeur de variable d'environnement. Cela devrait toujours retourner le système d'exploitation de la partition racine par exempleC:
.OriginalL'auteur
Ne sais pas si c'est de l'aide, mais vous pourriez essayer:
ou
ou
Pour le dernier extrait, vous pouvez obtenir le répertoire racine par la navigation vers le haut à l'aide de getParent() jusqu'à ce que
null
est retourné.Je pense que vous vouliez dire à un commentaire sur un autre réponse
Oui, mon mauvais. Vous semblez avoir trouvé celui que je voulais dire.
String userDir = new File(System.getProperty("user.dir")).getAbsolutePath(); String rootDir = userDir.substring(0, userDir.indexOf(File.separator)+1);
Downvotes parce que
System.getProperty("user.dir");
ne renvoie pas toujours un système d'exploitation de chemin de lecteur, plutôt le répertoire de l'application.OriginalL'auteur