Hallo,
du solltest den
XML Code nur einmal laden:
Delphi-Quellcode:
procedure Tfrmxml.btnanzClick(Sender: TObject);
const
XPATH = '//Basket[%d]/@path';
XANZAHL = '//Baskets[%d]/@totalNumber';
var
doc: IXMLDOMDocument2;
n: IXMLDOMNode;
begin
if CreateDocument(doc, dbMemo1.Text) then
begin
// Anzahl Briefkörbe auslesen
n := doc.selectSingleNode(Format(XANZAHL, [1]));
edanzahl.text:=(VarToStr(n.nodeValue));
// Briefkorb Pfad auslesen
n := doc.selectSingleNode(Format(XPATH, [strtoint(ednummer.text)]));
edpfad.text:=(VarToStr(n.nodeValue));
end else ShowParseError(doc.parseError);
end;
Das Verändern des Pfades hatte ich dir bereits in Beitrag #39 gezeigt. An den aktuellen
XML Code gelangst du über doc.xml, was ich dir im gleichen Beitrag auch gezeigt habe. %d ist ein sogenannter format specifier und du findest diese im Help Topic "Format-Strings" beschrieben. Nach Ersetzung der Platzhalter durch die Funktion Format() erhältst du einen sogenannten XPATH-Ausdruck. XPATH ist eine W3-Spezifikation zur genauen Lokalisierung von Objekten in einem
XML Document Object Model (
XML DOM).
Freundliche Grüße