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

XSL/XSLT/XPATH XML Discussion :

lecture de valeurs numériques contenues dans un fichier xml


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut lecture de valeurs numériques contenues dans un fichier xml
    Bonjour,
    On a une liste de nombres se trouvant dans une balise <coordonnes>. on a réussi à lire tout le contenu de cette balise avec xpath en codant en langage c. le problème qui se pose est que notre programme fait la lecture de la balise en tant que chaîne de caractère.cependant, on a besoin de récuperer ces données pas sous forme de chaîne de caractère(pas comme un gros bloc) mais en tant que nombres independant les uns des autres.

    pouvez vous nous renseigner?
    merci


    fichier.xml

    <proprietes>
    <coordonnees>1 0 0 5 4 7 9 56 45 1 0 0 4 7 5 6 1</coordonnes>
    <champ_principal>0 0 1</champ_principal>


    </proprietes>


    exemple1.c

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <libxml/parser.h>
    #include <libxml/xpath.h>

    int main() {

    // Ouverture du document XML

    xmlKeepBlanksDefault(0); // Ignore les noeuds texte composant la mise en forme

    xmlDocPtr doc = xmlParseFile("exemple2.xml");

    if (doc == NULL) {

    fprintf(stderr, "Document XML invalide\n");

    return EXIT_FAILURE;

    }

    // Initialisation de l'environnement XPath

    xmlXPathInit();

    // Création du contexte

    xmlXPathContextPtr ctxt = xmlXPathNewContext(doc);

    if (ctxt == NULL) {

    fprintf(stderr, "Erreur lors de la création du contexte XPath\n");

    return EXIT_FAILURE;

    }

    // Evaluation de l'expression XPath

    xmlXPathObjectPtr xpathRes = xmlXPathEvalExpression("/proprietes/coordonnees/text()", ctxt);

    if (xpathRes == NULL) {

    fprintf(stderr, "Erreur sur l'expression XPath\n");

    return EXIT_FAILURE;

    }

    // Manipulation du résultat

    if (xpathRes->type == XPATH_NODESET) {

    int i;

    printf("coordonneest:\n");

    for (i = 0; i < xpathRes->nodesetval->nodeNr; i++) {

    xmlNodePtr n = xpathRes->nodesetval->nodeTab[i];

    if (n->type == XML_TEXT_NODE || n->type == XML_CDATA_SECTION_NODE) {

    printf("- %s\n", n->content);

    }

    }

    }
    xmlXPathFreeObject(xpathRes);

    xmlXPathFreeContext(ctxt);

    xmlFreeDoc(doc);



    return EXIT_SUCCESS;

    }

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Si tu récupères les coordonnées sous la forme d'une chaine, ce n'est pas un problème XML mais un simple problème de code C.

    Regarde la fonction strtok

    ERE
    Quand une tête pense seule, elle devient folle.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2008
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci pour la réponse et excusez c long délai

Discussions similaires

  1. Lecture d'un tableau contenu dans un fichier
    Par olivier21c dans le forum C++
    Réponses: 4
    Dernier message: 21/02/2012, 23h15
  2. Réponses: 1
    Dernier message: 07/04/2011, 20h28
  3. Réponses: 13
    Dernier message: 16/06/2010, 12h17
  4. [AJAX] Lecture et affichage du contenu d'un fichier xml dans un menu deroulant
    Par undercrash dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/01/2008, 16h26
  5. [XML] [EXPAT] Mise en memoire d'information contenue dans un fichier XML
    Par websurfeur dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 11/04/2007, 14h16

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