Einzelnen Beitrag anzeigen

toyoman

Registriert seit: 2. Jun 2003
323 Beiträge
 
Delphi 2010 Enterprise
 
#56

Re: Ideen für spezielle Stringbearbeitung

  Alt 25. Jul 2008, 07:03
Zitat von marabu:
Dein XML-Dokument aus Beitrag #37 wird von meinem Beispiel-Code aus Beitrag #39 problemlos verarbeitet. Ich habe dein Dokument über die Zwischenablage in eine Datei kopiert und von dort zur Laufzeit in ein Memo geladen. Ich übergebe dann Memo.Text anstelle von MARKUP.
Ok, meine Prozedur schaut nun so aus:

Delphi-Quellcode:
procedure Tfrmxml.Button1Click(Sender: TObject);
function CreateDocument(var doc: IXMLDOMDocument2; const markup: string): Boolean;
begin
  doc := ComsDOMDocument.Create;
  doc.async := False;
  Result := doc.loadXML(markup);
end;
const
{  MARKUP
    = ''
    + ''
    + ''
    + ''
    + ' '
    ;}

  XPATH = '//Basket[%d]/@path';
var
  anzahl: integer;
  i: integer;

  doc: IXMLDOMDocument2;
  n: IXMLDOMNode;
  MARKUP : string;


begin
  MARKUP := memo1.text;
  if CreateDocument(doc, MARKUP) then
  begin
    n := doc.selectSingleNode(Format(XPATH, [1]));
    ShowMessage(VarToStr(n.nodeValue));
    n.nodeValue := ExtractFilePath(ParamStr(0));
    ShowMessage(doc.xml);
  end else ShowMessage(doc.parseError.reason);


{  XMLDocument1.LoadFromFile(getpath+'test.xml');
  if xmldocument1.DocumentElement.NodeName='Baskets' then
  begin
      anzahl:=XMLDocument1.DocumentElement.Attributes['totalNumber'];
      for i := 0 to anzahl-1 do
      begin
        showmessage(XMLDocument1.DocumentElement.ChildNodes.Nodes[i].Attributes['path'])
      end;
   end;}


end;
Und dabei krieg ich die erwähnte Meldung (im memo1.text ist genau der XML String drin welcher in Beitrag #37 drin steht... )
  Mit Zitat antworten Zitat