IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Trier une List contenant des noms et prénoms


Sujet :

Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut Trier une List contenant des noms et prénoms
    Bonjour à tous !

    J'ai beau regarder de nombreux sites mais je ne comprend rien ! C'est très compliqué de s'en sortir tout seul . J'ai une list d'un tableau de String qui contient des noms et prénoms, je dois remplir un JTable en ordonnant la civilité (ce qui me paraît logique), j'ai regardé de nombreux forum (francophone et anglo-saxon ... j'ai pas encore essayé l'allemand) et je ne comprend rien !!! CompareTo, Compare, ListComparator, ... Rien mais rien mais rien à comprendre, je pense qu'il faut naître avec un cerveau d'Einstein.

    Je vais mettre un bout de code sans pour autant savoir si ça va vous aider mais merci d'avance à tous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    private static List<String[]> listCustomer;
     
     
    // Là j'ajoute mes données à l'attribut de type List<String[]>, ça fonctionne sans problème
    listCustomer = ScanCustomer.getList();
     
    // Maintenant je ne sais pas quoi faire
    public void ?????

  2. #2
    Membre averti Avatar de pascalCH
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Juillet 2006
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 187
    Points : 369
    Points
    369
    Par défaut
    Bonjour,

    je pense que dans la FAQ java tu trouveras de quoi réussir.
    La nature fait des choses extraordinaires, observons la et restons humble, on ne nous demande pas de refaire le monde mais juste de reproduire virtuellement des choses existantes ....

    et n'oubliez pas si vous aimez et quand vous avez la réponse

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Hello,

    Bon, là c'est surtout de la méthodologie, alors on va prendre un peu de recul.
    À mon avis, le problème c'est plutôt...

    Citation Envoyé par Jb_One73 Voir le message
    J'ai une list d'un tableau de String qui contient des noms et prénoms,
    Ça, le problème. Une List<String[]>. Java est un langage objet, on fait pas des choses pareilles. Du coup, on trouve pas tellement d'aide en ligne pour faire ce que personne ne fait.

    Ce qu'il te faut, c'est :
    - créer une classe Personne, qui contient un nom et un prénom
    - faire une List<Personne>.

    Maintenant faisons un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    public class Tracteur {
      private final String marque;
      private final String proprietaire;
     
      public Tracteur(String marque, String proprietaire) {
        this.marque = marque;
        this.proprietaire = proprietaire;
      }
     
      public String getMarque() {
        return marque;
      }
     
      public String getProprietaire() {
        return proprietaire;
      }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class TestTracteur {
      public static void main(String... args) {
        List<Tracteur> tracteurs = new ArrayList<>();
        tracteurs.add(new Tracteur("Renault", "Michel"));
        tracteurs.add(new Tracteur("Peugeot", "Raymond"));
        tracteurs.add(new Tracteur("Peugeot", "Bernard"));
     
        for(Tracteur tracteur : tracteurs) {
          System.out.println(tracteur.getMarque() + " de " + tracteur.getProprietaire());
        }
      }
    }
    On a des objets et une liste de ces objets. Des données organisées clairement, pas des espèces de listes de tableaux incompréhensibles que personne ne veut voir et dont personne ne parlera.

    Bien. Maintenant je veux trier cette List<Tracteur> par ordre de marque. On va pas mélanger toutes les marques.
    Depuis Java 1.8, et si on a bien organisé ses données, c'est tout simple. On utilise sort() sur la List, en fournissant une lambda qui explique comment on trie deux Tracteur l'un par rapport à l'autre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tracteurs.sort((t1, t2) -> {
      return t1.getMarque().compareTo(t2.getMarque());
    });
    Et voilà ! tracteurs, ma List<Tracteur>, est maintenant triée par ordre de marque. Si on l'affiche à nouveau, on peut voir que les Peugeot sont affichés avant, parce que P est avant R.


    Accessoirement, et en conclusion, c'est normal qu'on ne puisse pas tout faire au début juste avec des tutoriels, il faut poser des questions (et en fait avoir des cours avec un prof et un bouquin c'est pas du luxe.)
    C'est important de travailler avant, mais demander est indispensable aussi.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Citation Envoyé par thelvin Voir le message
    public class Tracteur
    Ca, c'est vraiment pour ne pas faire son boulot à sa place

    Par contre, les lambdas c'est peut etre un peu violent pour un débutant.
    En fait, ce qu'à fait thelvin revient à:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Collections.sort(tracteurs, new Comparator<Tracteur>() {
            @Override
            public int compare(Tracteur t1, Tracteur t2)
            {
     
                return  t1.getMarque().compareTo(t2.getMarque());
            }
        });

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par hwoarang Voir le message
    Ca, c'est vraiment pour ne pas faire son boulot à sa place
    Je ne vois pas du tout de quoi tu parles.</mensonge>

    Citation Envoyé par hwoarang Voir le message
    Par contre, les lambdas c'est peut etre un peu violent pour un débutant.
    Comprendre de quoi il s'agit et comment les faire soi-même, certainement.

    Les lire dans un exemple tout fait qui fonctionne et refaire leur contenu, ça me semble au contraire bien plus facile pour un débutant que la même chose avec des classes anonymes. Au départ c'est un peu pour ça que tout le monde adire les lambdas.
    À condition bien sûr d'avoir Java 1.8 -_-°.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    +1 pour les lambdas, c'est plus facile dans le sens où ce n'est pas pollué par plein de code "inutile".

    Au passage pour créer un Comparator on peut également utiliser la méthode comparing() :
    Ainsi l'équivalent de ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tracteurs.sort((t1, t2) -> {
      return t1.getMarque().compareTo(t2.getMarque());
    });
    Peut s'écrire de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tracteurs.sort( Comparator.comparing(Tracteur::getMarque) );
    Son gros intérêt c'est de pouvoir chainer plusieurs critères facilement, par exemple pour comparer par marque puis pas propriétaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	    tracteurs.sort( Comparator.comparing(Tracteur::getMarque)
    	    		.thenComparing(Tracteur::getProprietaire) );

    a++

  7. #7
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Les lire dans un exemple tout fait qui fonctionne et refaire leur contenu, ça me semble au contraire bien plus facile pour un débutant que la même chose avec des classes anonymes. Au départ c'est un peu pour ça que tout le monde adire les lambdas.
    Mouais, je dois me faire trop vieux ^^
    Mais j'avoue qu'entre le symbole -> et les 2 parametres sans type, j'ai toujours trouvé ca un peu...
    Bref, je me dis qu'en tant que débutant, c'est pas forcément facile à comprendre au premier coup d'oeil. Mais je reconnais qu'une fois qu'on y est habitué, ca simplifie pas mal le code

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Je viens de me rendre compte que je me suis un peu lâché dans ce message donc je vais mettre tout de suite ma question parce que j'ai peur que vous n'alliez pas jusqu'à la fin.

    Thélvin, tout d'abord merci pour ton aide, j'ai une question concernant la dernière méthode que tu as noté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    tracteurs.sort((t1, t2) -> {
      return t1.getMarque().compareTo(t2.getMarque());
    });
    Je dois la mettre où ? Dans la classe Tracteur (je ne pense pas plutôt dans la classe où j'ai besoin de comparer) ?

    Ouh ! Là ! Alors tout d'abord MERCI à tous pour vos réponses surtout à thelvin (je ne porte pas de favoris mais il m'a apporté beaucoup d'explications et d'exemples). Après je voulais pas faire de polémique mais c'est vrai que thelvin à raison enfin pour moi, avoir un exemple concret avec des explications et beaucoup plus facile que des écris. L'interprétation de chacun n'est forcément la même que le rédacteur et on part vite fait en live ! J'en suis connaisseur.

    Que des gens comme vous m'apportent du soutient et de l'aides est très important ! C'est un peu comme si on donnait un livre à un enfant qui ne sait ni lire ni écrire et que l'on lui demande de rédiger l'histoire.
    Sans les bases et l'apprentissages ... je ne vois pas comment faire ??? Je ne veux pas passer pour Caliméro mais tout seul ... je n'ai que vous pour m'en sortir ! Je galère tellement que je passe des heures entières à essayer de trouver comment mettre en oeuvre un simple trie (exemple de ce post) dont d'ailleurs une partie de ce qu'à noté thelvin m'échappe mais je vais en parler.

    Pour finir :
    Je débute en Java et j'ai un projet à mettre sur pied et rendre au plus tard le 8 mars, à la vitesse où vont les choses j'ai peur d'y arriver mais j'aurai fait mon max. Dans mon UE et environ 50, les 3/4 ont d'excellente notions car soit ils en ont fait, soit ils ont fait du C# et une minorité comme moi galère ! Après leur demander du soutient tient du miracle (je ne veux pas critiquer mais c'est la réalité) après je comprend que chacun à ses priorités et je ne les réfutes pas. Je prend sur moi et j'essaie au de faire le mieux que je peux et quand je galère (en général quand je passe au minimum 2h dessus) je post un message sur ce forum et les personnes comme vous m'apporte du soutient et j'en suis très fier.

    Je vous remercie à tous de m'apporter autant de réponses et d'explication qui restent une preuve de professionnalisme, encore un grand MERCI !

  9. #9
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Citation Envoyé par Jb_One73 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    tracteurs.sort((t1, t2) -> {
      return t1.getMarque().compareTo(t2.getMarque());
    });
    Je dois la mettre où ? Dans la classe Tracteur (je ne pense pas plutôt dans la classe où j'ai besoin de comparer) ?
    C'est la lambda dont on parle. En fait, t1 correspond au 1er tracteur a comparer, t2 au 2e. Cette lambda definit la fonction qui gere le tri (par rapport à la marque dans ce cas).
    Donc, pour l'utiliser, tu dois placer ce code à l'endroit ou tu veux trier ta liste. Evidemment, la liste dans etre accessible (cad etre une variable de classe ou bien etre une variable accessible).

    Mais bon, le plus important que t'a montré thelvin, c'est de créer ta classe Personne. Crée la, ajoutes quelques personnes et indique l'endroit ou tu veux la trier. Poste ce code et, de la, on pourra te dire quel est le meilleur moyen de le faire

  10. #10
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par Jb_One73 Voir le message
    Thélvin, tout d'abord merci pour ton aide, j'ai une question concernant la dernière méthode que tu as noté

    Je dois la mettre où ? Dans la classe Tracteur (je ne pense pas plutôt dans la classe où j'ai besoin de comparer) ?
    Pas dans la classe Tracteur.

    Ces lignes font en sorte de trier la liste tracteurs.
    Donc il faut les mettre au moment où, tu avais une variable tracteurs de type List<Tracteur> et qui n'est pas triée, et tu veux faire qu'elle soit triée.

    Entre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tracteurs.add(new Tracteur("Renault", "Michel"));
    tracteurs.add(new Tracteur("Peugeot", "Raymond"));
    tracteurs.add(new Tracteur("Peugeot", "Bernard"));
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for(Tracteur tracteur : tracteurs) {
      System.out.println(tracteur.getMarque() + " de " + tracteur.getProprietaire());
    }
    par exemple, c'est pas mal.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Merci hwoarang,

    C'est tout ça fonctionne ! Vous êtes trop (je parle pour vous tous), j'ai une dernière question après j'arrête (pour ce post du moins) :
    Ma collection ArrayList contient plusieurs données c'est à dire : Nom, Prénom, Adresse, Tél, etc. Est ce que je dois mettre dans ma classe Client (substitution de la classe Tracteur de thelvin) l'ensemble de mes données (getNom, getPrenom, getAdresse, etc) afin d'avoir ma ArrayList contenant toutes mes données et trié ?

    Je pense que oui mais je ne suis pas sur.

    Merci.

  12. #12
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Ben après c'est comme tu veux ça dépend quel genre de données tu as besoin de gérer quand. Mais oui, ça me semble plus intelligent comme ça, en effet.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Thelvin,

    Avant d'aller plus loin j'aimerai avoir ton avis sur ce que j'ai fait et avoir tes critiques (s'il y a bien sur) donc voici ce que j'ai fait :

    Substitution de ta classe Tracteur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
     
    /*
     * To change this license header, choose License Headers in Project Properties.
     * To change this template file, choose Tools | Templates
     * and open the template in the editor.
     */
    package xxx.projet;
     
    import java.util.Iterator;
    import java.util.List;
     
    /**
     *
     * @author xxx
     */
    public class Client {
     
        private final String firstname;
        private final String lastname;
        private final String id = "";
        private final String type = "";    
        private final String streetnumber = "";
        private final String streetname = "";
        private final String zipcode = "";
        private final String city = "";
        private final String country = "";
        private final String phone = "";
        private final String email = "";    
     
        public Client(List<String[]> client){
            Iterator<String[]> iterator = client.iterator();
            iterator.hasNext();
            String[] next = iterator.next();
            this.firstname = next[0];
            this.lastname = next[1];
        }
     
        public String getLastname() {
            return lastname;
        }
     
        public String getFirstname() {
            return firstname;
        }
     
        public String getId() {
            return id;
        }
     
        public String getType() {
            return type;
        }
     
        public String geStreetnumber() {
            return streetnumber;
        }
     
        public String getStreetname() {
            return streetname;
        }
     
        public String getZipcode() {
            return zipcode;
        }
     
        public String getCity() {
            return city;
        }
     
        public String getCountry() {
            return country;
        }
     
        public String getPhone() {
            return phone;
        }
     
        public String getEmail() {
            return email;
        }    
    }
    Les attributs que j'ai déclaré sont initialisés avec une valeur vide mais c'était pour éviter d'avoir des erreurs après je les enlèverai pour les noter dans le construteur

    Ça te paraît bien ?

  14. #14
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Citation Envoyé par Jb_One73 Voir le message
    Ça te paraît bien ?
    Non, le constructeur n'est pas génial. Le mieux est de passer tous les parametres dont tu as besoin plutot que de passer une liste de string. Dis toi bien que le plus important, c'est la maintenance de code. Et la, dans 6 mois, quand tu regarderas ton code, tu ne te rappeleras plus l'ordre des string pour creer ta classe et tu risques de faire des erreurs. Ca te permettra aussi d'avoir des types de parametres différents (String, int, ...). Bref, je dirais plutot un truc comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public Client(String firstname, String lastname){
            this.firstname = firstname;
            this.lastname = lastname;
        }

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 256
    Points : 85
    Points
    85
    Par défaut
    Alors j'ai apporté des modifs et après ça fonctionne et je peux alimenter ma jTable correctement maintenant est ce que j'ai bien travaillé ???

    Voici ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
     
    public class Client {
     
        private final String firstname;
        private final String lastname;
        private final String id;
        private final String type;    
        private final String streetnumber;
        private final String streetname;
        private final String zipcode;
        private final String city;
        private final String country;
        private final String phone;
        private final String email;    
     
        public Client(String[] client){
            this.firstname = client[0];
            this.lastname = client[1];
            this.id = client[2];
            this.type = client[3];    
            this.streetnumber = client[4];
            this.streetname = client[5];
            this.zipcode = client[6];
            this.city = client[7];
            this.country = client[8];
            this.phone = client[9];
            this.email = client[10];        
        }
     
        public String getLastname() {
            return lastname;
        }
     
        public String getFirstname() {
            return firstname;
        }
     
        public String getId() {
            return id;
        }
     
        public String getType() {
            return type;
        }
     
        public String geStreetnumber() {
            return streetnumber;
        }
     
        public String getStreetname() {
            return streetname;
        }
     
        public String getZipcode() {
            return zipcode;
        }
     
        public String getCity() {
            return city;
        }
     
        public String getCountry() {
            return country;
        }
     
        public String getPhone() {
            return phone;
        }
     
        public String getEmail() {
            return email;
        }    
    }
    Je ne suis pas sur de respecter ta convention hwoarang ???

  16. #16
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Citation Envoyé par Jb_One73 Voir le message
    Je ne suis pas sur de respecter ta convention hwoarang ???
    Non, effectivement, tu passes toujours un tableau de String à ton constructeur plutot que les données de ta classe. Ca rend le code difficile à lire (la partie création des objets Personne) et la maintenance compliquée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Trier une liste contenant une paire ?
    Par Muetdhiver dans le forum C++
    Réponses: 6
    Dernier message: 01/04/2009, 22h42
  2. Créer une liste à partir des noms des feuilles
    Par BOU59000 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 19/08/2008, 18h38
  3. Réponses: 7
    Dernier message: 13/09/2007, 15h22
  4. Remplir une liste avec des noms de fichiers
    Par Claude_Azoulai dans le forum ASP.NET
    Réponses: 1
    Dernier message: 11/09/2007, 08h00
  5. Créer une liste avec des noms de fichiers
    Par Jeffboj dans le forum Access
    Réponses: 5
    Dernier message: 12/05/2006, 05h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo