![]() |
MSXML und Streams
Moin,
gibt es die Möglichkeit, mit MSXML 4 in Streams zu schreiben und aus Streams zu lesen`? Beim Lesen könnte man sich ja mit xmlDoc.loadXML() helfen, aber ein äquivalentes xmlDoc.saveXML gibt es nicht. Was kann OleVariant alles sein, nur Dateien? Muss man also mit temporären Dateien arbeiten? THX! |
Re: MSXML und Streams
Hm, stelle ich wirklich so komplizierte Fragen, dass mir keiner helfen kann?
Also mal anders. Ich habe nun folgendes ausprobiert, was auch funktioniert:
Delphi-Quellcode:
Spricht irgendetwas dagegen, es so zu machen?
Stream := TMemoryStream.Create;
s := xmldoc.xml; l := length(s); Stream.Write(s[1],l); |
Re: MSXML und Streams - Die Lösung!
So, die vernünftige Lösung liegt doch so nah... (bei D7 abgeschaut und funktioniert auch mit MS-XML):
Delphi-Quellcode:
Mit
var
Stream: TStream; OleStream: IStream; begin Stream := TMemoryStream.Create; OleStream := TStreamAdapter.Create(stream); xmldoc.save(OleStream); end
Delphi-Quellcode:
kann man genauso aus einem Stream lesen, natürlich sollte man tunlichst nicht vergessen, den Stream auch ganz zurückzuspulen, also auf Position := 0 zu setzen.
xmldoc.load(OleStream);
CU aps Wie bekomme ich den jetzt den Status "Offene Frage" wieder weg? Klick auf Edit funkt nicht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz