Chercher un fichier dans un répertoire donnée

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 686 fois - Téléchargée 18 fois

Contenu du snippet

Cette fonction "searchFile" permet de chercher le fichier "fileToFind" dans le répertoire "searchIn" et dans ces sous répertoire récursivement. Elle retourne "true" si le fichier "fileToFind" dans le répertoire "searchIn" sinon elle retourne "false".

Source / Exemple :


public boolean searchFile(String fileToFind, File searchIn) {
		File[] listOfFiles = searchIn.listFiles();
		Vector<File> listOfDirectories = new Vector<File>();
		Vector<File> listOfSimpleFiles = new Vector<File>();
		for (File file : listOfFiles) {
			if (file.isDirectory())
				listOfDirectories.add(file);
			else
				listOfSimpleFiles.add(file);		
		}
		boolean find = false;
		while (!find) {
			int i = 0;
			while (i < listOfSimpleFiles.size() && !find) {
				if (listOfSimpleFiles.get(i).getName()
						.equalsIgnoreCase(fileToFind)) {
					return true;
				} else
					i++;
			}
			int j = 0;
			while ((j < listOfDirectories.size()) && !find) {
				if(listOfDirectories.get(j).getName().equalsIgnoreCase(fileToFind))
					return true;
				else if(searchFile(fileToFind, listOfDirectories.get(j)))
					return true;
				else
					j++;
			}
			return false;
		}		
		return false;
	}

A voir également

Ajouter un commentaire

Commentaires

package javaSE;
import java.io.*;
import java.lang.*;
import java.util.*;



class A{
public String path="";
public String fileName="";
/*
public A(String path,String fn) {
this.path=path;
this.fileName=fn;
}
  • /

public static void searchFile(String path,String fichier) {
File f=new File(path);
ArrayList<File> rep=new ArrayList();
rep.add(f);
int i=0;
if(!f.exists()){
System.out.println("chemin inexistant");
}else {
for(i=0;i<rep.size();i++) {
for(File file : rep.get(i).listFiles()) {
if(file.isFile()) {
if ((file.getName()).compareTo(fichier)==0) {
System.out.println("fichier trouvé "+file.getAbsolutePath());
break;
}else {
System.out.println("fichier introuvé ");
continue;
}
}else {
rep.add(file);
continue;
}

}
}
}
}
}

public class Principal
{


public static void main (String[] args) throws IOException
{
//A a=new A();
A.searchFile("C:\\Users\\Moi\\Downloads\\Documents", "mohamed.txt");



}
}
thx it's very interesseting

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.