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

MATLAB Discussion :

Passage d'un fichier MATLAB à XML


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Passage d'un fichier MATLAB à XML
    Bonsoir,

    je suis stagiaire, et actuellement en train de travailler sur un basculement de donnée matlab en format XML.
    Néanmoins j'arrive à un problème qui semble n'être pas géré par la toolbox dont on parle dans la discussion du forum : http://www.developpez.net/forums/d63...l-xml-toolbox/

    En gros je dois avoir un fichier xml de la forme:
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <Moteur>
     <Gain> 
     <Pertes>
       <Puissance> Nom ='PER', pertes= '100'
       <Puissance> Nom='PED', pertes='30'

    En résumé, je dois avoir une balise et ds cette balise j'ai deux cas possibles.
    Ce qui me pose problème, c'est que je n'arrive pas à trouver un outil adapté à cette situation ( le fait qu'on ait deux fois le même nom de "sous-balise" (Puissance, nom pertes) pose un problème pour la lecture du fichier.
    J'ai donc essayé de faire une boucle for mais qd je lis ensuite le fichier sur un lecteur de fichier xmln il me sépara la balise Pertes des balises précédentes !

    Bref, question :
    1) existe t-il un outil pour mon problème ds la toolbox ?
    2) sinon que puis-je faire ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 318
    Points : 52 958
    Points
    52 958
    Par défaut
    Je ne comprends pas bien le schéma du XML final.

    Ne devrait-il pas plutôt ressembler globalement à ceci ?
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <Moteur>
        <Gain/>
        <Pertes>
            <Puissance>
                <Nom>PER</Nom>
                <Perte>100</Perte>
            </Puissance>
            <Puissance>
                <Nom>PED</Nom>
                <Perte>30</Perte>
            </Puissance>
        </Pertes>
    </Moteur>
    ou encore
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <Moteur>
        <Gain/>
        <Pertes>
            <Puissance  Nom="PER">100</Puissance>
            <Puissance Nom="PED">30</Puissance>
        </Pertes>
    </Moteur>

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    C'est le premier cas de figure que tu as mis en fait (désolé pour le manque de précision).

    Quand j'essaie de distinguer deux cas de puissances (Nom et Pertes qui varient selon le cas), je n'arrive pas. Je pourrais les appeler Puissance 1 et Puissance 2 pour dévier ce problème, mais cela va poser des ennuis par la suite dans la lecture de données.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 318
    Points : 52 958
    Points
    52 958
    Par défaut
    Tu construits une structure comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Moteur.Gain = [];
    Moteur.Pertes(1).Puissance.Nom = 'PER';
    Moteur.Pertes(1).Puissance.Perte = 100;
    Moteur.Pertes(2).Puissance.Nom = 'PED';
    Moteur.Pertes(2).Puissance.Perte = 30;
    ensuite, soit tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xml_save('test.xml', Moteur, 'off')
    ce qui donne :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?xml version="1.0"?>
    <!-- Written on 06-Jul-2012 14:57:48 using the XML Toolbox for Matlab -->
    <root>
      <Gain/> 
      <Pertes>
        <Puissance>
          <Nom>PER</Nom>
          <Perte>100</Perte>
        </Puissance>
        <Puissance>
          <Nom>PED</Nom>
          <Perte>30</Perte>
        </Puissance>
      </Pertes>
    </root>

    soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    str = xml_format(Moteur,'off','Moteur');
     
    fid = fopen('test.xml','w');
    fwrite(fid,str);
    fclose(fid);
    ce qui donne :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <Moteur>
      <Gain/> 
      <Pertes>
        <Puissance>
          <Nom>PER</Nom>
          <Perte>100</Perte>
        </Puissance>
        <Puissance>
          <Nom>PED</Nom>
          <Perte>30</Perte>
        </Puissance>
      </Pertes>
    </Moteur>

    Tout dépend si le nom de l'élément racine à de l’importance ou non

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Ok, je vais tester ça lundi sur Matlab.
    Je te tiendrai au courant si tout fonctionne bien dès lundi (n'ayant pas le logiciel sous la main)car j'avais fait un truc qui ressemblait mais j'avais des balises que je ne voulais pas qui apparaissaient (<Item/>).
    Merci en tout cas,

    Bien à vous.

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    J"ai testé le premier exemple et ça marche.
    Néanmoins je n'arrive pas à générer le deuxième exemple ci-dessous :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <Moteur>
        <Gain/>
        <Pertes>
            <Puissance  Nom="PER">100</Puissance>
            <Puissance Nom="PED">30</Puissance>
        </Pertes>
    </Moteur>
    Comment faîtes-vous pour programmer sous cette forme ?
    Merci d'avance.

  7. #7
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 318
    Points : 52 958
    Points
    52 958
    Par défaut
    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Moteur.Gain = [];
    Moteur.Pertes.Puissance(1).ATTRIBUTE.Nom = 'PER';
    Moteur.Pertes.Puissance(1).CONTENT = 100;
    Moteur.Pertes.Puissance(2).ATTRIBUTE.Nom = 'PED';
    Moteur.Pertes.Puissance(2).CONTENT = 30;
     
    str = xml_formatany(Moteur,'Moteur',1);
     
    fid = fopen('test.xml','w');
    fwrite(fid,str);
    fclose(fid);
    ce qui renvoie :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      <Moteur>
        <Gain/> 
        <Pertes>
          <Puissance Nom="PER">100</Puissance>
          <Puissance Nom="PED">30</Puissance>
        </Pertes>
      </Moteur>

    D'après la documentation de cette Toolbox, la ligne qui génère les données au format XML devrait s'écrire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str = xml_formatany(Moteur,'off','Moteur');
    à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str = xml_formatany(Moteur,'Moteur',1);
    Néanmoins, cela ne donne pas de bon résultats sur ma machine et comme l'auteur n'a pas fournit le code source de ces fonctions, je peux pas dire pourquoi cela fonctionne tout en étant différent de la documentation

    Si quelqu'un voit l'erreur, qu'il n'hésite pas à nous faire par de sa solution.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/07/2012, 19h38
  2. [TOMCAT] parametrage du fichier web.xml
    Par sebos63 dans le forum Tomcat et TomEE
    Réponses: 12
    Dernier message: 06/05/2010, 13h09
  3. [plugin]générer automatiquement un fichier web.xml
    Par car dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 15/03/2005, 17h04
  4. [Servlet] Erreur dans le fichier web.xml
    Par Crazyblinkgirl dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 05/07/2004, 16h20
  5. [TomCat][sécurité]config fichier web.xml
    Par liomac dans le forum Tomcat et TomEE
    Réponses: 6
    Dernier message: 24/09/2003, 16h46

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