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

Langage Java Discussion :

trier par nom une liste de fichier


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut trier par nom une liste de fichier
    Bonjour,

    Je travaille sur un programme java qui a une partie qui consiste à lister les fichiers d'un répertoire et des les afficher par nom (comme sous windows).
    Seulement toutes les méthodes que j'ai utilisé pour le moment ne fonctionnent pas comme je le veux.

    En clair:
    Dans mon répertoire, il y a ces fichiers :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    1.xml
    2.xml
    ...
    10.xml
    11.xml
    ...
    100.xml
    Ceci est l'affichage windows.

    et lorsque je suis avec java, il me liste les fichiers de la manière suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    1.xml
    10.xml
    100.xml
    ...
    11.xml
    110.xml
    ...
    2.xml
    20.xml
    ...
    et cela n'est pas ça que je veux.

    Est-ce que vous pouvez m'aider, s'il vous plait?
    Je suis presque sur que d'autre on eu déjà ce problème mais je n'arrive pas à trouver sur le net la solution.

    Merci d'avance,

    Pierre

  2. #2
    Membre éclairé Avatar de biozaxx
    Profil pro
    Inscrit en
    Août 2004
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 403
    Par défaut
    salut

    c'est parceque tu fais un tri alphanumerique sur le nom de tes fichiers or si tes fichiers on pour prefixe uniquement des chiffres, il faut que tu fasses un tri numerique sur le nom de tes fichiers (en virant le .xml)

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 278
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 278
    Par défaut
    Va voir la classe Collections et les méthodes sort.
    Si la méthode sort de base ne te satisfait pas, utilise celle avec un comparateur en paramètre.

  4. #4
    Membre chevronné Avatar de T`lash
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Saint-Pierre-Et-Miq.

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Septembre 2007
    Messages : 381
    Par défaut
    Demande manuellement le tri par nom dans l'explorer Windows et il y a de toutes les chances que tu vois l'ordre changer.
    Là il les trie par ordre chronologique de génération.
    Windows aussi place 2 après 10 et 100.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut
    Citation Envoyé par biozaxx Voir le message
    salut

    c'est parceque tu fais un tri alphanumerique sur le nom de tes fichiers or si tes fichiers on pour prefixe uniquement des chiffres, il faut que tu fasses un tri numerique sur le nom de tes fichiers (en virant le .xml)
    En fait j'ai mis pour exemple avec des chiffres seulement mais je peux avoir des prefix devant les chiffres.

    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    toto1.xml
    toto2.xml
    ...
    Citation Envoyé par T`lash Voir le message
    Demande manuellement le tri par nom dans l'explorer Windows et il y a de toutes les chances que tu vois l'ordre changer.
    Là il les trie par ordre chronologique de génération.
    Windows aussi place 2 après 10 et 100.
    J'ai essayé et windows trie bien comme je l'ai expliqué plus haut quand je fais un tri par nom et il ne place pas 10 et 100 avant 2.

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Par défaut
    Crée donc ton propre java.util.Comparator<?> qui permet de décider dans quel ordre trier tes chaînes de caractères. (comme fr1man l'a dit, au passage)

Discussions similaires

  1. [XL-2007] Modifier les noms d'une liste de fichier
    Par thomasmbai dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/08/2013, 00h33
  2. Aide [C++] Logiciel traitant le nom d'une liste de fichiers
    Par Sound4Lyon dans le forum Mon programme
    Réponses: 0
    Dernier message: 11/11/2008, 23h43
  3. Réponses: 5
    Dernier message: 03/01/2008, 16h07
  4. Réponses: 28
    Dernier message: 24/05/2006, 18h20
  5. [JSP] Trier par date une liste de fichier en JSP
    Par Total dans le forum Servlets/JSP
    Réponses: 10
    Dernier message: 21/02/2006, 15h38

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