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 Perl Discussion :

recherche aide et conseils sur les tables


Sujet :

Langage Perl

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2003
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 3
    Points : 4
    Points
    4
    Par défaut recherche aide et conseils sur les tables
    Bonjour,
    Je cherche une aide pour creer un table de hash. Débutant dans perl , je voudrai creer une table à partir d'un fichier , consulter les éléments et pouvoir inserer des éléments et sous éléments à postériori.

    nature de mon fichier en entrée.
    N° de produit,poid,prix,couleur1,couleur2,couleur3,couleur4

    Merci d'avance pour votre aide.
    JJ

  2. #2
    Membre actif Avatar de mobscene
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 331
    Points : 234
    Points
    234
    Par défaut
    je suppose que ton fichier est multiligne :


    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
    # On ouvre le fichier
    open(FILE, "fichier.ext") or die 'Erreur :s $!';
    flock(FILE,2); # On vérouille le fichier
    my @data = <FILE>; # injecte le cotenue du fichier dans le tableau
    flock(FILE, 8); # On supprime le verrou
    close(FILE); # Ferme le fichier
     
    my $hash = {};
     
    # On fait une boucle
    foreach my $ligne ( @data )
    {
        # On découpe chaque ligne en fonction du séparateur ','
        my @tab = split /,/, $ligne;
     
        # scalar retourne le nombre d'éléments d'une liste
        for (my $i = 1; $i < scalar(@tab); $i++)
        { 
            # Le n° du produit sert de clef
            # Tu peut mettre ce que tu veut a la place de undef biensur :)
            $hash->{$tab[0]}{$tab[$i]} = undef;
        }
    }

    Cela produit un hash comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $foo = {
         numero_produit = {
             poid => undef,
             prix => undef,
             couleur1 => undef,
             couleur2 => undef,
             couleur3 => undef,
             couleur4 => undef
        }
    };
    voilou
    Everybody have in their the potential to be their own god : Marilyn Manson

Discussions similaires

  1. Aide sur les tables intermédiaires
    Par bbtir dans le forum Modélisation
    Réponses: 2
    Dernier message: 29/03/2010, 11h40
  2. Comment faire la recherche sur les tables
    Par teZone dans le forum WinDev
    Réponses: 4
    Dernier message: 23/10/2007, 15h36
  3. [MYSQL] Commentaires sur les tables et les champs
    Par luc2verga dans le forum Requêtes
    Réponses: 10
    Dernier message: 29/05/2007, 23h49
  4. Réponses: 2
    Dernier message: 01/08/2005, 16h36

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