Article View: fr.comp.text.xml
Article #8379Re: xml et delphi
From: Christophe Bellangeon
Date: Tue, 23 Oct 2001 16:11
Date: Tue, 23 Oct 2001 16:11
74 lines
3758 bytes
3758 bytes
Pour le XML j'utilise plut�t:
VAR
monDocumentXML : IXMLDOMDocument2; // le fichier ou
document XML
BEGIN
monDocumentXML := coDOMDocument.Create; // cr�ation de la
coClasse
monDocumentXML.loadXML(chemin_fichier); // chargement du
fichier XML en m�moire
Il y a plusieurs mani�re de cr�er un fichier:
1- tu pars d'un document XLM existant que tu modifie ensuite
monDocumentXML.load(chemin_fichier_existant);
2- idem mais � partir d'une String
monDocumentXML.loadXML(ma_chaine);
ou par exemple
ma_chaine vaut '<?xml version="1.0"
encoding="ISO-8859-1"?><racine><mon_element mon_attribut="valeur">Mon
Texte</mon_element></racine>'
3- tu fabriques tout. C'est lourd.
Il faut cr�er et ins�er la processing instruction (<?xml>), lui et
ins�rer des attributs (vesion, encoding) puis cr�er et ins�rer la racine. Et
ainsi de suite pour les autres �l�ments.
Pour �diter ou s�lectionner des �lements utilise les types
IXMLDOMNode (un noeud)
IXMLDomNodeList (liste de noeuds)
IXMLDOMElement
IXMLDOMAttribut
Le principe de focntionnement est tr�s proche d'un TreeView.
Un exemple:
currentNode := xmlDOCNew.documentElement; //
s�lection de la racine !
newNode := xmlDOCNew.createNode(NODE_ELEMENT, 'mon_element', '');
currentNode.insertBefore(newNode, Null);
currentNode := currentNode.selectSingleNode('//mon_element');
// la s�lection suit les r�gles du XPath (ici l'exemple est assez brutal)
CurrentNode.text := 'Mon Texte';
L'exemple s�lection la racine, cr�er pour ce document un nouvel
�lement (mais l'�l�ment n'est pas encore ins�rer !),
insere l'�l�ment juste apr�s la racine, le selectionne et mais sa
valeur � "Mon Texte"
Autrement dit je mets <mon_element>Mon Texte</mon_element> juste
apr�s la racine.
"iceman" <f.heitzmann@acamaya.com> a �crit dans le message news:
9r42ul$1e0$1@s1.read.news.oleane.net...
| Bonjour
|
| J'essaie d'utiliser le composant MSXML3.0 avec DElphi mais j'ai un peu du
| mal � m'y retrouver entre l'API du composant, l'API de l'encapsulage par
| Delphi. En particulier, qu'est-ce que les types TDOMDocument et
| CoDOMDocument ? une diff�rence ?
|
| Est-ce que vous pourriez juste m'�crire les quelques lignes qui permettent
| de cr�er un objet DOM, de charger un document XML dans cette objet, et de
| r�cup�rer une valeur ou deux.
| Ca devrait suffir pour me mettre sur la voie.
|
| Merci.
|
| Fred
|
|
Technical Details
Message-ID:
<9r44g5$scr$1@reader1.imaginet.fr>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!isdnet!fr.clara.net!heighliner.fr.clara.net!fr.colt.net!writer!not-for-mailReferences:
<9r42ul$1e0$1@s1.read.news.oleane.net>Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII X-Google-Thread: 114f60,a5de39253b07e958 X-Google-Attributes: gid114f60,public X-Google-ArrivalTime: 2001-10-23 09:13:08 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!isdnet!fr.clara.net!heighliner.fr.clara.net!fr.colt.net!writer!not-for-mail From: "Christophe Bellangeon" <c.bellangeon@bouygues-construction.com> Newsgroups: fr.comp.text.xml Subject: Re: xml et delphi Date: Tue, 23 Oct 2001 18:11:57 +0200 Organization: ImagiNET / Colt Internet Lines: 76 Message-ID: <9r44g5$scr$1@reader1.imaginet.fr> References: <9r42ul$1e0$1@s1.read.news.oleane.net> NNTP-Posting-Host: bouygues.bouygues.fr X-Trace: reader1.imaginet.fr 1003853125 29083 193.57.109.2 (23 Oct 2001 16:05:25 GMT) X-Complaints-To: abuse@imaginet.fr NNTP-Posting-Date: 23 Oct 2001 16:05:25 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200