Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Sérialisation dans un flux [ Réseau & Internet / RSS & XML ] (quineman)

vendredi 10 août 2007 à 11:31:10 | Sérialisation dans un flux

quineman

Bonjour,
Voila, je souhaite avoir un flux XML dans une string pour faire une requete sur un serveur.
Pour cela j'utilise la sérialisation dot net.
Par contre quand on utilise cette méthode, on est obligé d'utiliser un StreamWriter qui me fabrique un fichier xml...
Voici mon probléme (qui n'est en soit pas bloquant) : Sachant que je veux simplement une string et non un fichier, ya t il d'autre méthodes que l'XmlSerializer pour faire un flux car je ne voudrais éviter l'entrée sortie (lecture/Ecriture dans un fichier).
Si aucune autre méthode n'existe, pensez vous que ce problème est important et que ca affaiblira les performances de l'application (au moins 500 fichiers jours), le fichier est écrit avec le meme nom à chaque fois.
Merci pour votre aide.



vendredi 10 août 2007 à 11:32:49 | Re : Sérialisation dans un flux

quineman

Réf MSDN : 
Pour ce faire, vous devez déterminer le format de transport dans lequel le flux XML doit être stocké sous forme de flux ou sous forme de fichier.
Oui mais comment faire la différence...

samedi 11 août 2007 à 00:37:42 | Re : Sérialisation dans un flux

jesusonline

Membre Club Administrateur CodeS-SourceS
Bonjour,

flux (stream) != fichier. On peut bien sur serializer un objet dans un flux en mémoire, dans un flux réseau, dans un flux zipé, etc...

tu peux aussi sérializer dans un textwriter. De mémoire ca donne :

using(StringBuilder sb = new StringBuilder())
using(StringWriter sw = new StringWriter(sb))
{
   serializer.serialize(sw, obj);
}


Cyril - MSP - MCPD ASP.net & MCTS SQL

lundi 13 août 2007 à 12:47:50 | Re : Sérialisation dans un flux

quineman

Encore les bons conseils de Cyril. Merci m'sieur !
Il semble tout de meme que les streams soit stockés sous forme de fichier car quand tu veux avoir une variable stream, tu est obligé de la créer ainsi :

Dim

myFileStream As FileStream = New FileStream("myStreamRep.xml", FileMode.Open)Alors je pense surment que tu fais allusion au type stream mais dans le cas de la sérialisation de class, je ne sais pas comment m'en servir :

Dim

myStream As Stream = Nothing

mySerializer.Serialize(myStream, myStructure)

renvoi une erreur  de type "La valeur ne peut pas être null." car je pense que je n'arrive pas à initialiser ma variable correctement :

Est il possible d'utiliser ce type dans ce cas ?


lundi 13 août 2007 à 12:54:47 | Re : Sérialisation dans un flux

jesusonline

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Stream est une classe abstraite qui represente un flux, flux internet, flux sur un fichier, flux dans la mémoire, flux dans un pipe en mémoire, flux via un pigeon voyageur, bref tu peux créer ton propre flux et il n'y a aucun lien avec un fichier !

Si la solution que je te propose plus haut avec le StringWriter ne te convient pas tu peux utiliser le memorystream. Ca doit donner un truc dans le genre :

using(MemoryStream ms = new MemoryStream())
using(StreamReader sr = new StreamReader(ms))
{
   serializer.Serialize(ms, o);
   String result = sr.ReadToEnd();
}


Cyril - MSP - MCPD ASP.net & MCTS SQL

lundi 13 août 2007 à 15:23:40 | Re : Sérialisation dans un flux

quineman

Très sympa! Merci beaucoup pour ces précisions codées !



Cette discussion est classé dans : fichier, string, flux, xml, sérialisation


Répondre à ce message

Sujets en rapport avec ce message

generer des fichiers c à partir d'un flux xml [ par cricri1802 ] Salut tout le monde!J'ai un gros soucis. Dans le cadre d'un projet je dois pouvoir à partir d'un fichier xml générer du code c. C'est à dire qu'il fau Récupération d'un string du coté client [ par clavelski ] Bonjour, Donc j'ai un petit soucis avec mon string ;) . En fait du coté de mon service, j'ai 2 méthode qui me permette de concaténer 2 fichier XML.pub Suppression de l'entete d'un fichier XML [ par clavelski ] Bonjour, j'aimerais pouvoir supprimer l'entête d'un fichier XML.En fait, mon but est de concaténer 2 fichier XML mais le problème est que je concatène Datalist -> xml dataset? [ par babyboo1107 ] Bonjour,J'aimerai pouvoir envoyer les donnée d'un data liste dans un fichier xmlJ'ai penser d'envoyer mon datalist dans un dataset mais comment?Car à Remplir un dataset avec un XML [ par kaygee ] Salutj'ai un petit souci, j'essaye de remplir un dataset avec mon XML, mais il me répond root element is missing, <b Suppression dans un fichier xml [ par debladz ] Bonjour,Pour les besoin d'une application, je récupère des données d'un fichier XML et je les affiche dans un gridview.Jusque là, pas de soucis.Je réu xml en html [ par bossou ] salut à tous. je voudrais transformer un fichier xml en html. j'ai déjà généré le schéma xsd du fichier et je cherche comment afficher mon fichier dan VS 2008 express et XML [ par kaygee ] Hello,Je cale un peu dans visual studio pour travailler avec des xmlxml</f DataSet Typé --> XML utilisant XSLT [ par stephsk09 ] Comment transformer un dataset en un fichier XML devant respecter la structure d'un fichier XSLT ???Merci d'avance [ASP][XML] probleme lecture du fichier xml [ par dragonrunne ] Salut,j'ai un soucis avec ce code :    dir = Server.MapPath("..\")    Set objxlang= Server.CreateObject("Microsoft.XMLDOM")    xml_lang="http://www.pl


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.