Kannst Du den Stream nach nicht einfach mit einem StreamReader auslesen ? memStrm.Position = 0; StreamReader reader = new StreamReader( memStrm ); string xml = reader.ReadToEnd();
oder hab ich was uebersehen ? Christoph Schittko Software Architect ----- Original Message ----- From: "Mahler Michael" <[EMAIL PROTECTED]> To: "aspDEdotnet" <[EMAIL PROTECTED]> Sent: Friday, September 27, 2002 9:57 AM Subject: [aspdedotnet] AW: RE: Kombination von MemoryStream und XmlTextWriter, XmlDocument Hi mc, das (memStrm.CanWrite) habe ich nur drin um zu sehen, ob der Stream noch offen ist. Wenn ich .Flush() oder .Close() einsetze wird der Stream geschlossen und myDoc.Load(memStrm) geht nicht mehr. Kann ich den Stream zum laden irgendwie wieder �ffnen? Gru� Michael -----Urspr�ngliche Nachricht----- Von: Christian Mairoll (Anti-Trojan.NET) [mailto:[EMAIL PROTECTED]] Gesendet: Freitag, 27. September 2002 16:52 An: aspDEdotnet Betreff: [aspdedotnet] RE: Kombination von MemoryStream und XmlTextWriter, XmlDocument warum willst du denn nochmal rein schreiben? if (memStrm.CanWrite) was z�hlt ist doch, da� du die daten lesen kannst. ohne .Flush() oder .Close() werden die daten nicht in den stream �bertragen, daher kann auch nichts gefunden werden. gr�sse mc [www.emsi.at] > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]] On Behalf > Of Mahler Michael > Sent: Friday, September 27, 2002 4:47 PM > To: aspDEdotnet > Subject: [aspdedotnet] Kombination von MemoryStream und > XmlTextWriter, XmlDocument > > > Hallo Leute, > > stehe gerade wieder vor einem weiteren Problem. > Ich versuche folgende Zeilen bei mir zum laufen zu bringen. Ziel ist > es ein XNM-Document in einem MemoryStream anzulegen und anschlei�end > als XmlDocument zur�ckzugeben. > > MemoryStream memStrm = new MemoryStream(); > XmlTextWriter writer = null; > writer = new XmlTextWriter (memStrm , System.Text.Encoding.UTF8); > writer.Formatting = Formatting.Indented; > writer.WriteStartDocument(); > String PItext="type='text/xsl' href='book.xsl'"; > writer.WriteProcessingInstruction("xml-stylesheet", PItext); > writer.WriteDocType("book", null , null, "<!ENTITY h 'hardcover'>"); > writer.WriteComment("sample XML"); > writer.WriteStartElement("book"); writer.WriteAttributeString("genre", > "novel"); writer.WriteAttributeString("ISBN", "1-8630-014"); > writer.WriteElementString("title", "The Handmaid's Tale"); > writer.WriteStartElement("style"); > writer.WriteEntityRef("h"); > writer.WriteEndElement(); > writer.WriteElementString("price", "19.95"); > writer.WriteCData("Prices 15% off!!"); > writer.WriteEndElement(); > writer.WriteEndDocument(); > > writer.Flush(); > writer.Close(); > > XmlDocument myDoc = new XmlDocument(); > if (memStrm.CanWrite) > { > myDoc.Load(memStrm); > } > return myDoc; > > > Wenn ich > writer.Flush(); > writer.Close(); > mit einsetze, wird auch der MemoryStream geschlossen und ich > kann nicht auf ihn zugreifen.. > > Lase ich die 2 Zeilen weg, bekomme ich die folgende Meldung: > "System.Xml.XmlException: Das Stammelement ist nicht vorhanden" > > > Gru� > Michael Mahler > > > > | [aspdedotnet] als [EMAIL PROTECTED] subscribed > | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv Sie > | k�nnen sich unter folgender URL an- und abmelden: > | http://www.dotnetgerman.com/listen/aspDEdotnet.asp > | [aspdedotnet] als [EMAIL PROTECTED] subscribed | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv Sie | k�nnen sich unter folgender URL an- und abmelden: | http://www.dotnetgerman.com/listen/aspDEdotnet.asp | [aspdedotnet] als [EMAIL PROTECTED] subscribed | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.dotnetgerman.com/listen/aspDEdotnet.asp | [aspdedotnet] als [email protected] subscribed | http://www.dotnetgerman.com/archiv/aspdedotnet/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.dotnetgerman.com/listen/aspDEdotnet.asp
