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

Windows Forms Discussion :

[VB.NET]Récupérer les variables d'un XML dans VB


Sujet :

Windows Forms

  1. #1
    Membre régulier Avatar de Yanos
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 160
    Points : 121
    Points
    121
    Par défaut [VB.NET]Récupérer les variables d'un XML dans VB
    Bonjour,

    Je travaille sous VB Express 2005 et j'ai une application à faire qui prend les donnée dans un fichier XML (dont j'ai la cartographie) pour les placer d'une certaine façon dans un fichier Excel.

    Je suis dans les tutoriels de developpez depuis 3 jours mais je suis perdu et je ne trouve pas ce que je veux. Je voudrais connaitre la procédure pour ouvrir un fichier XML et récupérer les variables. J'ai seulement besoin de lire le fichier et pouvoir mettre les variables dans un objet que j'aurai créé (un objet dont les paramètres seront les mêmes que l'enregistrement XML)

    Pour ouvrir le fichier j'ai ça mais j'ai une erreur (la fonction ne retourne pas de valeur)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Function openXML(ByVal fichier As String)
            Dim XMLStruct As New XmlDocument
     
            XMLStruct.Load(fichier)
            root = XMLStruct.DocumentElement
     
        End Function
    et donc forcément je n'ai pas pu essayer la lecture
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Public Function lectureXML(ByVal valeur As String) As String
            Dim temp As String
            Dim position As Integer
     
            temp = root.Item(valeur).InnerText
            position = InStr(temp, vbCr)
            If position <> 0 Then
                Return (Mid(temp, 1, position - 1))
            Else
                Return (temp)
            End If
        End Function
    Est-ce que ça vous semble correcte comme utilisation?

  2. #2
    Membre régulier Avatar de Yanos
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 160
    Points : 121
    Points
    121
    Par défaut
    salut,

    je suis tjr bloqué au niveau de la lecture du fichier XML.
    J'arrive à l'ouvrir mais pas à le lire.
    J'ai le nom du noeud, la variable à récuperer mais rien y fait.

    ça me met une erreur au niveau de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      temp = root.Item(valeur).InnerText
    et il me dit que je dois mettre un new mais ça me parait bizard de faire ça.

    au pire vous n'auriez pas un code VB.NET qui me permet de lire le fichier XML?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    801
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 801
    Points : 314
    Points
    314
    Par défaut
    Bonjour Yanos,
    pour lire un fichier xml j'utlise cette méthode:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    private xml_doc = new XmlDocument();
    private StreamReader str;
    public string xml_local_directory;
    ...
    ...
    this.str = File.OpenText(my_xml_file);
    xml_doc.Load(str);
    str.Close();
    this.xml_local_directory = xml_doc.SelectSingleNode("/Settings/Local_Directory/Directory").InnerText.Trim();
    SelectSingleNode permet de récupérer un noeud unique.
    Si tu as plusieurs noeuds qui ont le même nom, tu peux encore utiliser la méthode SelectNodes qui récupère tes noeuds dans un XmlNodeList, tableau de noeuds.

    Bonne journée !

    [EDIT] C'est en C# mais y'a la même chose en VB je pense ... [/EDIT]
    tout le monde est d'accord pour critiquer la pensée unique

Discussions similaires

  1. récupérer les variables d'un batch dans Perl ?
    Par robbywan dans le forum Langage
    Réponses: 5
    Dernier message: 11/06/2012, 03h15
  2. [2.x] Récupérer les variables d'une méthode dans un layout
    Par guilhemsymf dans le forum Symfony
    Réponses: 4
    Dernier message: 01/03/2012, 10h52
  3. Réponses: 2
    Dernier message: 02/07/2009, 08h33
  4. Réponses: 5
    Dernier message: 28/09/2007, 14h58
  5. Réponses: 2
    Dernier message: 15/09/2006, 12h18

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