![]() |
XML; manipulieren ist ja kein Problem, aber ...
Moin,
also das manipulieren, bzw. das arbeiten mit .xml Dateien ist ja Dank XMLDocument gar nicht so schwer. Aber wie kann man denn eine .xml Datei zur Laufzeit erstellen?! Mit dem Befehl ...
Code:
... macht er es auf jeden Fall nicht. Wenn man erstmal eine .xml Datei hat, die auch schon ihren Anfang, á la <?xml version ......> besitzt, ist das hinzufügen von z.B. Knoten ja nicht mehr das Ding ...
Datamodule1.XMLDocument1.Create('C:\Datei.xml');
Weiß jemand Rat? Ricane |
Re: XML; manipulieren ist ja kein Problem, aber ...
Beim MS-XML-Parser geht´s recht einfach mit loadXML, der du den gewünschten (Anfangs-)XML-Code als String übergibst. Ich könnte mir vorstellen, dass XMLDocument etwas ähnliches anbietet. Sagt denn die Hilfe nichts darüber?
Create dient wohl eher dazu, eine Instanz des XML-Document-Objektes zu erzeugen. |
Re: XML; manipulieren ist ja kein Problem, aber ...
Zitat:
Beim XMLDocument, gibt es zwei Load* Methoden, die aber beide auf einen Fehler laufen, wenn man nicht vorhandene Dateien angibt... Grüsse, Ricane |
Re: XML; manipulieren ist ja kein Problem, aber ...
Hi,
du musst die Create-Methode verwenden mit dem AFileName. Ich vermute, dass dadurch die Datei auch erstellt wird. Wenn alle Fäden reißen kannst du auch eine einfache TextFile-Variable nehmen und dann dir das Grundgerüst per writeln erstellen. Allerdings sollte man das nur machen, wenn das mit deinem XMLDocument nicht geht. Btw MS XML halte ich für etwas einfacher bzw. logischer... :roll: ;) Chris |
Re: XML; manipulieren ist ja kein Problem, aber ...
Als DOMVendor benutze ich ja MSXML.
Aber es kann doch nicht so schwierig sein, eine XML Datei mit dem XMLDocument zu erstellen. Im I-Net bzw. im Delphi Handbuch (oder Delphi Hilfe) gibt es auch keine klaren Hinweise... Die Delphi Hilfe ist an der Stelle aber auch sehr(!) schwach. Es gibt für nix ein Beispiel! Ricane |
Re: XML; manipulieren ist ja kein Problem, aber ...
Warum sagst du das nicht gleich? IMHO bietet die XML-Komponente von Delphi6+ mehrere Möglichkeiten, von denen der Microsoft-Parser nur eine ist.
In dem Fall solltest du mal einen Blick in das PSDK werfen. Oder wenn dir das zu fett ist (~300meg Download), dann hole dir die aktuelle Version 4 SP2 von MS-XML. Ihr liegt die Doku auch bei. Da wirst du mit Sicherheit fündig, da du letztlich in Delphi "nur" die Typbibliothek von Microsoft benutzt. Und in dem Fall gilt, wie ich schon schrieb:
Delphi-Quellcode:
zum Anlegen einer neuen XML-Datei, die du dann mit
xmldoc := CoDOMDocument40.Create;
{ ... } xmldoc.loadXML('<Root><SubNode1><SubNode2/></SubNode1></Root>'); { ... }
Delphi-Quellcode:
speichern kannst. Das bezieht sich nun zwar vorrangig auf die schon angespochene Typbibliothek von Microsoft (s. auch Chakotays Tutorial), sollte aber mit der XML-Komponente ähnlich laufen.
xmldoc.save('Pfad\Dateiname.xml');
btw: lkz schrieb in AUQ, dass es bei XMLDocument von add heißt, und nicht loadXML. Dazu kann ich nichts sagen; höchstens: ausprobieren! Aber ich denke, eine Doku müsste doch eigenlich dabei sein (bei Delphi). Ist doch immerhin eine Standardkomponente ab Version 6. Oder? |
Re: XML; manipulieren ist ja kein Problem, aber ...
Zitat:
Als ich die Typenbibliothek msxml4.dll installieren wollte, sagte er mir, das sie bereit installiert ist, aber diese Datei die man, lt. dem Tutorial, einbinden soll, ist nicht vorhanden... Ich habe einfach nur die Komponente XMLDocument in mein DataModule eingebunden und verwende folgende Sachen in der USES Liste:
Code:
... na ja und natürlich noch diese ganzen anderen Standard Uses Dinger wie Windows, Messages n´ Stuff...
XMLDOM, XMLIntf, XMLDoc;
Aber ich kriege es nicht hin... Ricane |
Re: XML; manipulieren ist ja kein Problem, aber ...
Chakotay hat´s beschrieben:
|
Re: XML; manipulieren ist ja kein Problem, aber ...
Standardmäßig befindet sich die Unit dann im Lib-Verzeichnis.
Chris |
Re: XML; manipulieren ist ja kein Problem, aber ...
Ich habe das ganze jetzt mit dem XMLDocument, ohne Abstriche machen zu müssen, gelöst.
Zwar "betrüge" ich die .XML Datei etwas, weil ich den "Grundstein" per TextFile Bearbeitung lege und erst dann das XMLDocument einschalte, aber das stört mich wenig... :D Ricane |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 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