Recherche/Scan fichiers sur disques locaux
Bonjour,
Je souhaite rechercher tous les fichiers d'une certaine extension (par exemple .doc) présents sur l'ordinateur.
J'ai réussi en utilisant cette methode :
Code:
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
|
public void listeRepertoire (File repertoire) {
String fileName = repertoire.getName();
String extension = fileName.substring(fileName.lastIndexOf('.') + 1);
if(extension.equals("doc")){
this.ListeArg.add(repertoire.getAbsolutePath());
}
if ( repertoire.isDirectory ( ) ) {
File[] list = repertoire.listFiles();
if (list != null){
for ( int i = 0; i < list.length; i++) {
// Appel récursif sur les sous-répertoires
listeRepertoire( list[i]);
}
} else {
System.err.println(repertoire + " : Erreur de lecture.");
}
}
} |
Que j'utilise comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
path = "C:\\";
fichier = new File(path);
listeRepertoire(fichier);
for (int i = 0; i < ListeArg.size(); i++) {
System.out.println(".doc trouvés :" +ListeArg.get(i));
} |
Est-ce une bonne methode ? N'y a-t-il pas une meilleure solution ? Un objet déjà existant ?
Comment connaitre la racine du disque dur et les partitions présente ?
Merci de votre aide
Thomas