Beispiel - XML Verarbeitung
- Merve Yurdakul
- Dennis Balzuweit
Owned by Merve Yurdakul
Feb. 06, 2017
1 min read
Loading data...
Inhalt
In diesen Beispielen werden die grundlegenden Funktionen des Microsoft XML DOM Parsers vorgestellt.
Beispiel 1
Erstellen des OLE Objects, Iterierung über alle Knoten der ersten Ebene und Ausgabe der Knoteninhalte.
xmld := CreateOleObject('microsoft.xmldom'); if xmld.Load('c:\temp\orders.xml') then begin nodel := xmld.DocumentElement.ChildNodes; for i := 1 to nodel.Length do begin node := nodel.Item(i-1); nodec := node.ChildNodes; ShowMessage (nodec.Item(0).Text); end; end; xmld := unassigned;
Beispiel 2
Erstellen des OLE Objects, direkte Auswahl eines Knotens über XPATH und Ausgabe des Knoteninhalts.
xmld := CreateOleObject('microsoft.xmldom'); XMLString := '<xml version=...'; if xmld.LoadXML(XmlString) then begin node := xmld.selectSingleNode('/ORDERS/ITEMS/PRODUCT'); ShowMessage (node.text); end; xmld := unassigned;
Beispiel 3
Erweitertes Beispiel 2 um eine Funktion GetXMLNodeAttributeValue welche den Inhalt eines angegebenen Knotenattributs zurückliefert.
function GetXMLNodeAttributeValue(Node : Variant; Name : String) : String; begin Result := ''; Name := uppercase(Name); for i:=1 to Node.Attributes.Length do begin mNode := Node.Attributes(i-1); if uppercase(mNode.name) = Name then begin Result := mNode.text; break; end; end; end; begin XMLString := '’; if LoadFileToString('c:\temp\example.xml',XMLString) = true then begin xmld := CreateOleObject('microsoft.xmldom'); if xmld.LoadXML(XmlString) then begin node := xmld.selectSingleNode('/ORDERS/ITEMS/PRODUCT'); ShowMessage( GetXMLNodeAttributeValue(node,'PRODUCTID') ); end; xmld := unassigned; end; end;