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

wxWidgets Discussion :

wxDirTraverser : liste dans le désordre


Sujet :

wxWidgets

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Topeur
    Profil pro
    Inscrit en
    Février 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 91
    Par défaut wxDirTraverser : liste dans le désordre
    Bonjour a tous,

    Ayant l'habitude d'utiliser cette méthode, je viens a vous car j'ai remarquez peut être une erreur dans cette méthode, je voulais savoir si partout cela posait le même problème. J'ai crée une surcharge de la méthode de manière a ce que cette fonction me sorte une liste ainsi qu'un fichier texte contenant tous les path des fichiers listés.

    Le répertoire est assez costaud, des dossiers qui contiennent des sous dossiers qui en contiennent encore d'autre + des fichiers qui n'ont pas tous la même extension. (300 dossiers 1500 fichiers)
    Lorsque je liste tout cela, j'obtiens le bon nombre de fichiers, en revanche, je ne les obtiens pas dans l'ordre logique (je crois qu'on parle de lexicographique).

    session04 se retrouve avant session01 ... etc

    Avez vous déjà eu ce genre de problème ?
    Je précise que le même code ne produit pas d'erreur sur des ensembles moins complexe. C'est comme si dépassé une certaine limite, le renvoi des informations ne se fais plus dans le même ordre.

    Si vous avez des pistes
    merci d'avance

  2. #2
    Membre chevronné Avatar de wxXav
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Décembre 2008
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : Décembre 2008
    Messages : 214
    Par défaut
    Salut.

    As-tu vérifié que l'ordre d'affichage ne correspond pas (on ne sait jamais) à l'ordre de création des éléments ?

    C'est juste une idée au passage.

    @+
    Xav'

  3. #3
    Membre confirmé Avatar de Topeur
    Profil pro
    Inscrit en
    Février 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 91
    Par défaut
    Citation Envoyé par wxXav Voir le message
    Salut.
    As-tu vérifié que l'ordre d'affichage ne correspond pas (on ne sait jamais) à l'ordre de création des éléments ?

    Xav'
    Je connais 2 types d'affichage possible
    Soit l'ordre logique numérique, (1,2...10,11...)
    soit l'ordre par caractere (1,10,11,...2, 20,...)

    Mais cette fois, l'ordre est beaucoup trop special
    Les 4 dossiers sont dans cette ordre (3, 2, 1, 4)
    Les sous dossiers sont d'abord dans l'ordre décroissant pour le 3, mais pour le 4 ils sont dans l'ordre croissant, tandis que les autres sont un peu des 2 :p

    Le gros gros bazar quoi ^^
    Curieux de comprendre !

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    J'aurais tendance à dire que le problème est à l'envers : pourquoi devraient-ils être triés ? Il me semble que cela ne fait pas partie du contrat de la classe, non ? Si tu es sur Windows, fais un bête dir /s >resultat.txt et regarde le tri des répertoires. Si j'étais joueur, je parierais pour le même ordre que celui Traverse.

  5. #5
    Membre confirmé Avatar de Topeur
    Profil pro
    Inscrit en
    Février 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 91
    Par défaut
    Citation Envoyé par 3DArchi Voir le message
    Salut,
    J'aurais tendance à dire que le problème est à l'envers : pourquoi devraient-ils être triés ? Il me semble que cela ne fait pas partie du contrat de la classe, non ? Si tu es sur Windows, fais un bête dir /s >resultat.txt et regarde le tri des répertoires. Si j'étais joueur, je parierais pour le même ordre que celui Traverse.
    Ca alors !
    Merci pour cet information, effectivement, le dir de windows répond lui aussi dans le même ordre que ce que me repond wxWidgets.
    Je n'avais pas remis en cause aussi loin, car je n'avais jamais vu auparavant un DIR qui ne trie pas (enfin c'est pour le coup qu'il a jamais trié :p)

    Merci pour votre aide !
    Je peux donc tranquillement ajouté une fonction de tri derrière la solution.
    Merci a tous !

  6. #6
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Citation Envoyé par Topeur Voir le message
    Ca alors !
    Merci pour cet information, effectivement, le dir de windows répond lui aussi dans le même ordre que ce que me repond wxWidgets.
    Je n'avais pas remis en cause aussi loin, car je n'avais jamais vu auparavant un DIR qui ne trie pas (enfin c'est pour le coup qu'il a jamais trié :p)

    Merci pour votre aide !
    Je peux donc tranquillement ajouté une fonction de tri derrière la solution.
    Merci a tous !
    En fait, derrière ta question se cache 2 erreurs classiques lorsqu'on utilise une bibliothèque :
    1/ Peu excusable[*]: tu sur-ajoutes à l'interface d'une classe. Inconsciemment, tu projettes ton résultat attendu sur ce que devrait faire une classe, ça te paraît tellement évident que tu ne comprends pas que ça ne le fasse pas. Or, rien dans ta classe ne dit que le service est rendu comme tu l'espère. -> Toujours bien lire la doc. Si la doc ne dit pas qu'elle fait quelque chose, ne pas supposer qu'elle le fait au prétexte qu'elle semble le faire dans quelques exemples. Si le contrat ne précise nul part que le résultat est trié mais que celui-ci l'est, c'est tout simplement que t'as de la chance. Sans compter, que sur un même jeu de test, ça peut être trié aujourd'hui mais plus du tout demain suite à une nouvelle version. Comme ça ne faisait pas parti du contrat, ça n'a pas été pris en compte dans l'évolution !
    2/ Compréhensible : tu ne te sais pas forcément comment marche le mécanisme interne de ta bibliothèque ou de la fonction sous jacente. Bon, ben là, un seul remède : pratiquer, pratiquer, pratiquer. Forum&tuto peuvent t'apporter ici la réponse qu'il te manque
    [*]Peu excusable : façon de parler bien sûr. Que celui qui ne fait pas (même après de nombreuse année d'expérience) ce type d'inférence me jette la première pierre. Simplement, étant donné qu'il s'agit d'une erreur de 'démarche', je préfère accentuer la réponse.

  7. #7
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Citation Envoyé par Topeur Voir le message
    je n'avais jamais vu auparavant un DIR qui ne trie pas
    Pour être exact, il y a une option au dir (/O) pour spécifier un ordre de tri. Mais, c'est vrai qu'il faut avoir côtoyer des PC avec DOS avant les premiers windows pour s'en souvenir

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

Discussions similaires

  1. [XL-2007] Liste déroulante dans le désordre
    Par tsgri dans le forum Excel
    Réponses: 19
    Dernier message: 21/08/2009, 18h04
  2. Création liste dans cellules Excel en VBA
    Par yazoo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/04/2005, 14h46
  3. [STRUTS]Liste dans un formulaire
    Par SEMPERE Benjamin dans le forum Struts 1
    Réponses: 14
    Dernier message: 11/02/2005, 17h10
  4. [langage] probleme avec les listes dans des listes
    Par pqmoltonel dans le forum Langage
    Réponses: 7
    Dernier message: 27/04/2004, 12h32
  5. Réponses: 5
    Dernier message: 03/02/2004, 14h20

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