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

VB.NET Discussion :

Parser un XML..


Sujet :

VB.NET

  1. #1
    Nouveau candidat au Club
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut Parser un XML..
    Salut,

    Trop la tête dans le guidon, je n'arrive pas à voir ce qui cloche dans mon parser XML.

    Mon objectif: récupérer la valeur de la balise value (myTimeStamp).
    Le XML à parser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <projet>
       <data>
         <modelType type="AAA">
           <model type="AAA" id="0000" state="Intact">
            <field name="TimeStamp" type="TimeStamp">
              <value type="TimeStamp">myTimeStamp</value>
            </field>
           </model>
          </modelType>
       </data>
    </projet>
    Le code du parser:

    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
     
    Dim list_modelType As XmlNodeList = unFicXML.GetElementsByTagName("modelType")
    For cpt As Integer = 0 To list_modelType.Count - 1
            If list_modelType(cpt).Attributes("type").Value = "AAA" Then
                Dim list_AAA As XmlNodeList = list_modelType(cpt).ChildNodes
                    For cpt2 As Integer = 0 To list_AAA.Count - 1
                        Dim list_balise_AAA As XmlNodeList = list_AAA(cpt2).ChildNodes
                        For Each noeud As XmlNode In list_balise_AAA
                            noeud.SelectSingleNode("/field[@name='TimeStamp']/value[@type='TimeStamp']")
                            If Not IsNothing(noeud.SelectSingleNode("/field[@name='TimeStamp']/value[@type='TimeStamp']")) Then
                                'it works
                            End If
                        Next
    		Next
    	EndIf
    Next
    Merci de votre aide!

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 700
    Par défaut
    Bonjour,
    à voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
                        For Each noeud As XmlNode In list_balise_AAA
                            If noeud.Attributes("name").Value = "TimeStamp" Then
     
                                'Console.WriteLine("noeud : " & noeud.Name & ",  " & noeud.Value)
                                Console.WriteLine(noeud.SelectSingleNode("value[@type='TimeStamp']").InnerText)
     
                                'If Not IsNothing(noeud.SelectSingleNode("/field[@name='TimeStamp']/value[@type='TimeStamp']")) Then
                                '    'it works
                                'End If
                            End If
                        Next

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut
    Citation Envoyé par chrismonoye Voir le message
    Bonjour,
    à voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
                        For Each noeud As XmlNode In list_balise_AAA
                            If noeud.Attributes("name").Value = "TimeStamp" Then
     
                                'Console.WriteLine("noeud : " & noeud.Name & ",  " & noeud.Value)
                                Console.WriteLine(noeud.SelectSingleNode("value[@type='TimeStamp']").InnerText)
     
                                'If Not IsNothing(noeud.SelectSingleNode("/field[@name='TimeStamp']/value[@type='TimeStamp']")) Then
                                '    'it works
                                'End If
                            End If
                        Next
    ça génère une exception de type NullReference...

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    700
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 700
    Par défaut
    Je pense qu'il faut tester l’existence éventuel de l'élément.
    A tester :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                        Dim list_balise_AAA As XmlNodeList = list_AAA(cpt2).ChildNodes
                        For Each noeud As XmlNode In list_balise_AAA
                            If noeud.Attributes("name").Value = "TimeStamp" Then
                                If Not IsNothing(noeud.SelectSingleNode("value[@type='TimeStamp']")) Then
                                    Console.WriteLine(noeud.SelectSingleNode("value[@type='TimeStamp']").InnerText)
                                End If
                            End If
    Next

Discussions similaires

  1. [C#] Parser du XML
    Par karl3i dans le forum Windows Forms
    Réponses: 5
    Dernier message: 27/02/2009, 09h46
  2. [DOM] Parser un XML
    Par Zapan dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 02/12/2005, 11h41
  3. [DOM XML] Comment parser du XML avec une version 4.3 ?
    Par ouioui2000 dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 18/10/2005, 15h52
  4. [FLASH MX2004] Parser un XML en action script
    Par jejeman dans le forum Flash
    Réponses: 6
    Dernier message: 20/09/2005, 17h25
  5. [XSL] Parser fichier xml : erreurs + incompréhensions
    Par totobouchon dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/07/2005, 15h47

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