Creation d'un fichier xml

Signaler
Messages postés
5
Date d'inscription
mardi 12 juin 2007
Statut
Membre
Dernière intervention
9 mars 2009
-
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009
-
<hr style="color: rgb(209, 209, 225); background-color: rgb(209, 209, 225);" size="1" />
<!-- / icon and title -->
<!-- message -->


Salut

je travail sur VB 2008 (code vb).

je veux creer un fichier xml ; les elements de ce fichier xml sont stockés dans un tableau

autrement dit :

j'a'i un tableau t1 deux dimensions dedans la premiere ligne pour les
noms des champs et la deuxième pour leurs valeurs. par exemple :


personne, id, name , age

vide, 1, Charle, 30


je veux par la suite que mon fichier xml soit comme ceci

Code xml :
>
>1>
<name>charle</name>
>30>

>


ce que je veux savoir avant tout : est ce que c'est possible et est ce qu'il exsite des solutions plus simples ou plus efficaces

si oui toute aide sera la bienvenue et merci


sinon merci  

7 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
salut,



est ce que c'est possible

: quoi? il n'y a pas de question ^^. de faire un xml depuis un tableau? oui!


est ce qu'il exsite des solutions plus simples ou plus efficaces

: plus simples et efficaces que quoi? l'idée du XMl? tout dépend ton besoin, il te faut nous l'expliquer pour qu'on puisse t'aider...

à savoir que la classe xml du framework n'a pas de méthode "automatique" de conversion tableau vers XML
pour une structure aussi "simple" que celle que tu sembles avoir besoin, il serait sans doute plus rapide de créer simplement ton fichier comme tout TXT en bouclant sur les éléments de ton tableau

++

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

ladil2007,

Quel est ton but créer un fichier XML avec tes infos 1 fois pour ce cas là, ou bien automatiser ca dans un programme qui servirait souvent?

Dans le 1er cas je te conseil une solution TRES simple et rapide mais il faut que tu sois équipé de microsoft office pour ca... Excel en particulier.

Tu rentres tes info dans le tableau: colonne a contiendra les id, la b les noms et la c les ages.

A partir de là tu rentre ce code dans l'editeur vba d'office et tu éxécutes ta macro qui aura soins de te créer un fichier à la racine de ton C: au format .txt que tu n'auras qu'a renomer en .XML

J'ai inclus une ptite mise en forme avec des tabulations pour la lecture du fichier XML ensuite...

En espérant que ca te sera utile ...

Nota: si le chier existe déjà il le remplace sinon il le créé

Sub CreationXML()
        Open "C:\lstSST.txt"For Output As #1
            'Première ligne pour le type d'encodage du fichier
            Print #1, "<?xml version=" & """1.0""" & " encoding=" & """ISO-8859-1" & """?>"
            'Ouvrture d'une Balise qui englobera tout pour aider le traitement du fichier sous vb2008 ensuite
            Print #1, "<lstPersonne>"
            'Détermine combien de lignes seront traitées
            For i = 1 To Range("A1").End(xlDown).Row
                Print #1, Chr(9) & ""
                Print #1, Chr(9) & Chr(9) & "" & Range("A" & i).Text & ""
                Print #1, Chr(9) & Chr(9) & "<Name>" & Range("B" & i).Text & "</Name>"
                Print #1, Chr(9) & Chr(9) & "" & Range("C" & i).Text & ""
                Print #1, Chr(9) & "

"
            Next i
            Print #1, "</lstPersonne>"
        Close #1
End Sub
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Heu une correction désolé ...

Open "C:\lstSST.txt" For Output As #1 devient Open "C:\lstPersonne.txt" For Output As #1

Et ton fichier sera enregistré sous "C:\lstPersonne.txt"

LC
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
whitelegend, ton code est du VB6...
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Renfield,

Je t'assure que ce code tourne sous l'éditeur VBA de microsoft excel, c'est sur cette interface que je l'ai programmé et que je m'en sert.
A moins que je le fait d'avoir visual studio sur le pc puisse influer?... je croyais que non vu que VBA est un éditeur propre à lui même et dépendant de son application hôte.

Pourrais-tu me confirmer, que j'évite de poster des aneries si tel est le cas ?

LC
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
oui, VBA, VB6, même combat dans pas mal de cas.

reste que la question est en VB.NET ^^
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

Renfield,

Oui oui ^^ mais comme je lui disais si son besoin est ponctuel ( création du fichier 1 seul fois pour ce cas précis) et qu'il avait office il avait cette solution ^^

Sinon il reste ce tutosuper bien fait...

LC