Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#67

Re: Ideen für spezielle Stringbearbeitung

  Alt 5. Aug 2008, 13:56
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
  Mit Zitat antworten Zitat