q_113
Messages postés8Date d'inscriptionvendredi 6 janvier 2006StatutMembreDernière intervention19 décembre 2007
-
19 déc. 2007 à 11:50
q_113
Messages postés8Date d'inscriptionvendredi 6 janvier 2006StatutMembreDernière intervention19 décembre 2007
-
19 déc. 2007 à 14:32
Bonjour,
Je liste un répertoire comme ceci :
File dir = new File("C:\\Doc");
String [] children = dir.list();
if (children == null) {
System.out.println("Pas de fichiers à lire");
} else {
par contre meme si mon repertoire contient aucun fichier la condition "else" est executée.
Si dans else je demande l'affichage de children avec aucun fichier dans le repertoire Doc j'ai " [Ljava.lang.String;@a90563" donc children n'est pas null et la condition "else" sera toujours executer.
Donc ma question c'est comment faire pour que children soit égale à null si il y a aucun fichier dans le répertoire ??
merci de votre aide
A voir également:
Sortir proprement qd on liste un répertoire et que celui ci est vide
cs_AlexN
Messages postés694Date d'inscriptionlundi 5 décembre 2005StatutMembreDernière intervention 8 janvier 201419 19 déc. 2007 à 14:01
La raison est que list() te renvoie un tableau (qui a une adresse mémoire non nulle), mais que ce tableau est vide.
Il faut non pas tester l'adresse du tableau mais sa taille :
if (children.length == 0) {
...
} else {
...
}