Lire flux XML

Résolu
Pierrick34090 Messages postés 7 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 août 2006 - 13 juil. 2006 à 08:40
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 13 juil. 2006 à 11:54
Salut,
Voilà mon problème: (Langage C#)
Je désire enregistrer un flux XML (du type <racine><Docs><Doc>blabla</Doc></Docs></racine>) dans ma base de données SQL Server. Ceci est très facile en écrivant un fichier XML et en le lisant par la suite seulement ma seule contrainte est: NE PAS écrire de fichier xml. Donc j'ai essayé plusieurs méthodes sans succès:
- Ecrire dans un MemoryStream puis lire ce dernier, dans ce cas une erreur du type "Aucun élément racine trouvé" s'affiche alors qu'il y a un élément racine.
- Lire un XmlTextWriter avant de le fermer et donc qu'il créé le fichier, ça n'a pas marché non plus.

Si quelqu'un a une idée, je suis preneur!!!

4 réponses

Pierrick34090 Messages postés 7 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 août 2006
13 juil. 2006 à 11:23
Ca y est!!!!
Après 3j de recherche intensive sur google j'ai enfin trouvé la réponse...dans l'aide de visual studio lol.
Il faut faire un XmlWriter.Create(monStream) puis StreamReader(monStream).
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 juil. 2006 à 09:58
Salut,

Tu peux ajouter les éléments que tu veux à une instance de XmlDocument sans l'enregistrer sur le disque par exemple.
La solution du MemoryStream est bonne aussi, n'oublie pas de le repositionner en début de flux après avoir écris, sinon tu lis à partir de la fin.

PS : poste dans le bon forum la prochaine fois, le bar est une section commune à tous les sites qui ne sert pas à poser des questions de prog.
Je déplace.

/*
coq
MVP Visual C#
CoqBlog
*/
0
Pierrick34090 Messages postés 7 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 août 2006
13 juil. 2006 à 10:27
Oops désolé pour le mauvais forum!

Pour le MemoryStream je pense que c'est une bonne méthode mais j'ai essayé différente manière et à chaque fois une exception était levée:
- J'ai écrit mon xml avec un XmlTextWriter dans le MemoryStream, seulement si je ferme mon XmlTextWriter, quand j'essaye de lire mon stream l'erreur est "impossible de lire un stream fermé", et si je laisse mon XmlTextWriter ouvert et que je lis mon stream l'erreur est "aucun élément racine trouvé" ça m'énerve franchement là! Ca fait 3jours que je bloque là dessus ça devient un peu embêtant...
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
13 juil. 2006 à 11:54
Yep, en général elle est plein d'infos cette doc trop peu utilisée

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous