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

C++Builder Discussion :

Table hachage 2 dimensions:


Sujet :

C++Builder

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut Table hachage 2 dimensions:
    Bonjour tout le monde,

    Dans le cadre de mon travail, j'ai des données sous la forme souvante:

    ObjA ; Att1 : val1,val2,...
    ObjB ; Att2 : val3,val4,....

    je cherche un moyen pour faire ceci:

    ayant un couple (objet, attribut) : je doit récupérer la liste des valeurs correspondant à ce coupe.

    j'ai pensé à utiliser une table de hachage de 2 dim sachant que dans chaque cellule je dois utiliser un TStringList pour enregistrer les valeur de chaque couple.

    je me plente pour l'instant.
    si vous pourriez me donner un coup de pousse j'en serai très reconnaissant.
    merci d'avance à vous tous

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    Salut,

    Est ce qu'il ya une personne qui a testé l'utilisation d'une TobjectList d'un TobjectList d'une TStringList:
    1° ObjectList pour les lignes,
    2° ObjectList pour les colonnes
    le TStringList pour les valeurs contenus dancs chaque cellule. !??

    merci d'avance.

  3. #3
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Ce n'est peut être pas la solution idéale ni la solution la plus adaptée a ton problème, mais l'utilisation d'un fichier INI pourrait faire l'affaire.

    Pour stocker les donnée, tu peux structurer ton fichier INI de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    [ObjA]
    Attr1 = val1,val2,...
    [ObjB]
    Attr2 = val3,val4,...
    Ensuite tu peut récupéréer simplement tes valeurs en utilisant un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myIniFile->ReadString( "ObjA", "Attr1", "" ) ;
    A toi ensuite de découper la liste de valeur obtenue (en utilisant TStringList et DelimitedText par exemple), ce n'est pas très compliqué...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    merci Sat83, à chaque fois tu me sauve la vie,

    je vais teste ça.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    Citation Envoyé par sat83 Voir le message
    Ce n'est peut être pas la solution idéale ni la solution la plus adaptée a ton problème, mais l'utilisation d'un fichier INI pourrait faire l'affaire.

    Pour stocker les donnée, tu peux structurer ton fichier INI de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    [ObjA]
    Attr1 = val1,val2,...
    [ObjB]
    Attr2 = val3,val4,...
    Ensuite tu peut récupéréer simplement tes valeurs en utilisant un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myIniFile->ReadString( "ObjA", "Attr1", "" ) ;
    A toi ensuite de découper la liste de valeur obtenue (en utilisant TStringList et DelimitedText par exemple), ce n'est pas très compliqué...

    si j'ai bien compris:

    j'utilise une (String ligne) pour lire chaque ligne associée à (Obj, Att)
    après je récuprère les Tocken de cette ligne qui contient les valeurs de ce couple (Obj, Att).
    donc:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ligne=myIniFile->ReadString( "ObjA", "Attr1", "" ) ;
    Tocken->Text=StringReplace(ligne, ',' , "\n" , TReplaceFlags()<<rfReplaceAll);
     
    //....... les valeurs seront dans  Tocken->String[i]  ..........

    super l'idée, je vais la tester/

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Par défaut
    sa marche.
    merci à vous.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/09/2011, 22h15
  2. Alimentation tables de faits /dimensions
    Par abed77 dans le forum kettle/PDI
    Réponses: 2
    Dernier message: 31/07/2011, 19h57
  3. table de fait , dimensions et cube
    Par hishwest dans le forum Conception/Modélisation
    Réponses: 1
    Dernier message: 04/04/2011, 12h04
  4. Alimentation de la table de faits & dimension temps?
    Par footmaster dans le forum Alimentation
    Réponses: 4
    Dernier message: 16/02/2011, 00h53
  5. Réponses: 2
    Dernier message: 05/06/2009, 21h50

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