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

Modules Perl Discussion :

Problème avec XML::Simple


Sujet :

Modules Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut Problème avec XML::Simple
    Salut !


    Je parse un fichier xml de 8 Mo en utilisant un petit bout de perl glané sur le web, mais le seul soucis c'est que j'arrive pas à exploiter ce que j'ai parsé !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    use XML::Simple;
    use Data::Dumper;
     
    my $ref = XMLin("../2006-04-03/monfichier.xml");
     
    print $ref->(time);
    Il me sort à chaque fois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Not a CODE reference at P:\....monscript.pl line 7 :(
    Alors que quand je print avec le Dumper j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $VAR1 = {
              'time' => '04/03/06 19:37',
              'mode' => 'mt',
              'version' => '6.5.000.23',

    Vous voyez pourquoi ?

  2. #2
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Relis tes exemples : il ne faut pas écrire :
    mais
    --
    Jedaï

  3. #3
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    promis je m'achète des lunettes bientôt


    merci

  4. #4
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    j'ai un autre petit soucis, toujours dans l'exploitation de mon Parse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    my $ref = XMLin("../030406.xml");
     
    %h_personne = $ref->{Create}->{Personne};
    J'obtiens par le Dumper ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $VAR1 = {
              'sdhfg' => {
                          'firstName' => 'toto',
                          'employeeID' => 'titi',
                              },
              'eorto' => {
                            'firstName' => 'seb',
                            'employeeID' => 'seb31',
              ....
    Je veux récupérer ce qu'il y a dans ma table de hashage pour l'insérer dans une base de données. J'essaye de récupérer les clés et de les afficher :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    @keys_personne = keys(%h_personne);
    print join(" ; ",@keys_personne);
    Mais à chaque fois il me sort 'HASH(0x.....)'

  5. #5
    Jeh
    Jeh est déconnecté
    Membre expérimenté Avatar de Jeh
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 203
    Par défaut
    Il me semble, d'après le Dumper que tu as fais, que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ref->{Create}->{Personne}
    ne revoie pas un hash mais une référence de hash.

    Essaies donc plutôt comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    my $ref = XMLin("../030406.xml");
     
    $h_personne = $ref->{Create}->{Personne};
    ....
    @keys_personne = keys(%$h_personne);
    print join(" ; ",@keys_personne);

  6. #6
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    merci beaucoup, c'était ça visiblement

  7. #7
    Jeh
    Jeh est déconnecté
    Membre expérimenté Avatar de Jeh
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 203
    Par défaut
    Citation Envoyé par ViRouF
    merci beaucoup, c'était ça visiblement
    N'oublie pas le tag "Résolu" dans ce cas

  8. #8
    Membre confirmé
    Inscrit en
    Février 2006
    Messages
    102
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 102
    Par défaut
    j'avais pas vu l'icone

    Merci encore

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

Discussions similaires

  1. Problème lecture xml avec XML::SIMPLE
    Par chalu133 dans le forum Langage
    Réponses: 1
    Dernier message: 05/12/2012, 16h12
  2. Problème avec XML::Simple
    Par tlep dans le forum Modules
    Réponses: 2
    Dernier message: 25/06/2008, 19h43
  3. Perl + XML : problème de '-' avec XML::Simple
    Par rico29600 dans le forum Modules
    Réponses: 6
    Dernier message: 17/07/2007, 14h50
  4. problème pour parser un fichier xml avec XML::Simple
    Par black_code dans le forum Modules
    Réponses: 3
    Dernier message: 30/01/2006, 19h32
  5. Problème avec XML.Clear dans un TXMLDocument
    Par Tardiff Jean-François dans le forum Composants VCL
    Réponses: 2
    Dernier message: 04/01/2005, 11h45

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