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

Collection et Stream Java Discussion :

Trier un fichier.


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 1
    Par défaut Trier un fichier.
    Bonjour,

    Je souhaiterais trier un fichier texte.
    Il y a plusieurs clés de tri (clés multiples).
    Elles sont passées via une variable d'environnement
    ex: export clés=21,3,a 33,5,n

    21,3,a:
    21 étant le debut du premier critere de tri dans la ligne, 3 étant sa longueur, a indiquant le type (a pour alpha, n pour numerique...).

    33,5,n
    33 étant le debut du deuxième critere de tri dans la ligne, 5 étant sa longueur, n indiquant le type (a pour alpha, n pour numerique...).

    j'ai une classe auxiliaire Criteres permettant de stocker les informations propres à chacune de mes clés.

    class Criteres{
    private int numeroCritere;
    private int debut;
    private int longueur;
    private char type;

    //constructeurs

    //methodes accesseurs

    ....
    }

    je souhaiterais developper une autre classe auxiliaire appelée ObjetLigne qui permetterait d'instancier des objets contenant chacun une ligne avec les champs à trier. Ces objets seraient mis ensuite dans un conteneur de type list
    Il ne me resterait alors plus qu'à implémenter l'interface Comparable pour trier ces objets.

    Est ce correct de passer par des classes auxiliaires pour réaliser ce type d'opération ou faut il plutôt passer par des classes internes ?.

    Deplus j'ai un problème avec ma classe ObjetLigne. Je ne sais pas comment faire pour différencier les champs entier des champs chaine de caractère. Dois je utiliser une map, une array, une list??????????? sachant que ensuite je devrez comparer tout ça dans le bon ordre.

    Voir ci-dessous:
    class ObjetLigne implements Comparable {

    String elementLigne;

    ObjetLigne (String _elementLigne){
    elementLigne=_elementLigne;
    }

    void putElementField(String _field, int _numero, char _type )
    {

    }

    void putElementInt(Integer critere,int _numero, char _type)
    {

    }

    // implémenter l'interface Comparable
    public int compareTo (Object o) {
    //ObjetLigne temp = (ObjetLigne) o;
    //return premierCritereString.compareTo (temp.premierCritereString.toLowerCase());
    return 0;}

    Je ne suis pas un grand developpeur et je suis un peu perdu dans tout ça.

    Merci pour tout l'aide que vous pourrez m'apporter,

  2. #2
    Membre éprouvé Avatar de White Rabbit
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 122
    Par défaut
    42

Discussions similaires

  1. Trier un fichier
    Par Premium dans le forum C
    Réponses: 12
    Dernier message: 23/01/2006, 09h12
  2. trier des fichiers avec un tableau flexgrid
    Par digger dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 08/12/2005, 15h20
  3. Trier un fichier
    Par enicnath dans le forum Général Python
    Réponses: 5
    Dernier message: 10/11/2005, 17h31
  4. [XSLT] - Trier un fichier sur plusieurs critères
    Par ytse dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 11/10/2005, 16h26
  5. Trier les fichiers par type et les afficher par groupe ...
    Par KneXtasY dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 18/09/2005, 18h50

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