cs_iceman64b
Messages postés30Date d'inscriptionmardi 28 février 2006StatutMembreDernière intervention 5 mars 2013
-
7 sept. 2010 à 05:53
The Meteorologist
Messages postés232Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention 3 novembre 2011
-
9 sept. 2010 à 15:49
Bonjour,
Un ami m'a demandé de lui faire une application pour trier et filtrer ses fichiers. Voici le modèle
aaa.mp3
aaa.cdg
bbb.mp3
ccc.cdg
ddd.mp3
ddd.cdg
Ce qu'il faut faire, c'est déplacer les fichiers n'apparaîssant qu'une fois dans un dossier nommé "Fichiers seuls".
Je sais pas trop comment m'y prendre (trouver ou éliminer des doublons c'est facile mais là, c'est le contraire ...) Auriez-vous des idées sur comment m'y prendre ?
Aussi, serait-ce mieux de faire une application console pour cela ou une application Windows ?
P.S. : mon ami a environ 20 000 fichiers à trier et filtrer.
The Meteorologist
Messages postés232Date d'inscriptionjeudi 18 janvier 2007StatutMembreDernière intervention 3 novembre 20111 9 sept. 2010 à 15:49
Bonjour iceman64b,
Voilà comment je m'y prendrais :
// Liste de la totalité des signatures MD5
var hashes = new List<string>(){};
// Liste de la totalité des fichiers
var fileNames = new List<string>() {};
// Fichiers uniques
var uniqueFileNames = new List<string>();
for (var index = 0; index < hashes.Count; index++)
{
var hash = hashes[index];
var querySameHashes = from h in hashes
where h == hash
select h;
if (querySameHashes.Count() == 1)
{
uniqueFileNames.Add(fileNames[index]);
}
}
Je crée donc une collection contenant toutes les signatures MD5 ( si tu ne sais pas comment les calculer voici un exemple ). Et je crée une seconde collection contenant tous les chemins des fichiers. Ensuite il n'y a plus qu'à repérer les signatures uniques et en ressortir le fichier analogue ;). Libre à toi de choisir une application graphique ou console, c'est juste une question de goût ...