Problème de directoryInfo

Messages postés
74
Date d'inscription
samedi 10 janvier 2004
Statut
Membre
Dernière intervention
19 septembre 2006
-
Messages postés
74
Date d'inscription
samedi 10 janvier 2004
Statut
Membre
Dernière intervention
19 septembre 2006
-
Bonjour tout le monde j'essaye de voir comment faire pour renommer des fichiers jpg.
Je fais donc ceci pour les récuperer et les afficher dans une listview

private FileInfo[] fileInfoListe;

DirectoryInfo directoryInfo = new DirectoryInfo(path);
fileInfoListe = directoryInfo.GetFiles("*.jpg");

// Si des fichiers ont été trouvé
 if(fileInfoListe.Length != 0)
{
    // On parcours la liste des fichiers afin de récupérer leur nom dans une listView
        foreach(FileInfo fileInfo in fileInfoListe)
        {
            listViewFichiers.Items.Add(fileInfo.Name);
        }
}

Ce qui m'ennui c'est que si mes photos s'appellent photo 1.jpg, photo 2.jpg, [...], photo 54.jpg j'aurai dans ma listView:

photo 1 .jpg
photo 11.jpg
photo 12.jpg
[...]
photo 2.jpg
photo 21.jpg
[...]
photo 3.jpg

Donc si après je les renomme je perdrai le classement de celle ci. Il faudrait alors que je trouve le moyen de trier par ordre alphabètique mon fileInfoList mais je ne voit pas comment faire.

J'espère avoir été suffisament clair et attend vos réponses avec impatience

Merci
A voir également:

2 réponses

Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
le moyen le plus simple est de créer un IComparer.
Celui-ci devra comparer tout d'abord la partie texte du nom de fichier... puis la partie numérique.

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
Messages postés
74
Date d'inscription
samedi 10 janvier 2004
Statut
Membre
Dernière intervention
19 septembre 2006

salut sebmafate, merci pour ton aide.
Comment je fais pour creer un Icomparer afin de comparer la partie texte puis la partie numérique. Je vois pas comment m'y prendre. De plus mes photos n'ont pas forcemément une partie "texte" en revanche elles ont forcement une partie numérique.
Si tu connait un petit lien je suis preneur :)