Bonjour, quelqu'un peut-il me dire la différence entre file.mkDir()
et file.mkDirs()
?
Réponses
Trop de publicités?mkdirs()
également crée les répertoires parents dans le chemin de cette File
représente.
la documentation javadoc pour mkdirs()
:
Crée le répertoire nommé par le présent résumé chemin, y compris toute nécessaire, mais inexistant répertoires parents. Notez que si cette l'opération échoue, il peut avoir réussi à la création de certains de la nécessaire répertoires parents.
la documentation javadoc pour mkdir()
:
Crée le répertoire nommé par le présent résumé chemin.
Exemple:
File f = new File("non_existing_dir/someDir");
System.out.println(f.mkdir());
System.out.println(f.mkdirs());
donnera false
pour la première et pas de dir sera créé], et true
pour le second, et vous aurez créée non_existing_dir/someDir
mkdirs()
va créer le répertoire spécifié chemin dans sa totalité lorsque mkdir()
ne fera que créer le fond de la plupart de répertoire, à défaut, s'il ne trouve pas le répertoire parent du répertoire, il est en train de créer.
En d'autres mots, mkdir()
, c'est comme mkdir
et mkdirs()
, c'est comme mkdir -p
.
Par exemple, imaginons que nous ayons un vide /tmp
répertoire. Le code suivant
new File("/tmp/one/two/three").mkdirs();
permettrait de créer les répertoires suivants:
/tmp/one
/tmp/one/two
/tmp/one/two/three
Où ce code:
new File("/tmp/one/two/three").mkdir();
ne serait pas de créer tous les répertoires - car il ne trouve pas /tmp/one/two
- et serait de retour false
.
mkdir()
crée un seul répertoire à la fois, s'il n'est parent que de celui-ci. autrement, il peut créer le sous-répertoire (si le chemin spécifié n'existe que) et ne créer aucun répertoire entre deux répertoires. il ne peut donc pas créer plusieurs répertoires dans un répertoire
mkdirs()
créer plusieurs répertoires (entre deux répertoires également) à la fois.