1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| // liste la taille d'un fichier/dossier
long fileDirectorySize(File file){
//System.out.print("\r\n1");
if (file == null){
//System.err.println("Erreur taille fichier");
return 0;
}
if (file.isFile()){ // traitement fichier
//System.out.print("2");
return file.length();
} else { // traitement dossier
//System.out.print("3");
long sizeTmp = 0;
for (File file2 : file.listFiles()){
//System.out.print("4");
if (file2.isFile()){ // traitement fichier
//System.out.print("a");
sizeTmp += file2.length();
} else { // traitement dossier
//System.out.print("b");
//System.out.print("\"" + file2.getAbsolutePath() + "\"");
try {
sizeTmp += fileDirectorySize(file2);
} catch (NullPointerException e){
System.err.println(e.toString() + ": " + file2.getAbsolutePath());
}
}
}
//System.out.print("5");
return sizeTmp;
}
} |