AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Simple XML Datei darstellen

Ein Thema von Larsi · begonnen am 27. Mai 2009 · letzter Beitrag vom 28. Mai 2009
Antwort Antwort
Seite 2 von 2     12   
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 15:37
Larsi, mir scheint, als ob Du weder die F1-Taste, noch Google kennst. Wenn das Dokument nicht aktiv (engl: 'active') ist, dann könnte das auf eine besondere Eigenschaft (engl: 'Property') der Klasse hinweisen, die irgendetwas mit dieser Meldung zu tun hat. Da zudem in der Meldung steht, dass das Dokument 'nicht' aktiv ist (sonst sind keine weiteren Werte zu sehen), könnte es sich also um einen Wahrheitswert (engl: 'boolean') handeln.

Brauchst Du noch mehr Unterstützung?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.586 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 15:40
Und ansonsten: Wie wäre es so?
Delphi-Quellcode:
var
  MyXml: IXMLDocument;
  HttpLoader: TIdHTTP;
  MemStream: TMemoryStream;
  CurrentNode: IXMLNode;
begin
  MyXml := NewXMLDocument('');
  MemStream := TMemoryStream.Create;
  try
    HttpLoader := TIdHTTP.Create;
    try
      HttpLoader.Get('http://xml.utrace.de/?query=www.utrace.de', MemStream);
    finally
      HttpLoader.Free;
    end;
    MemStream.Position := 0;
    MyXml.LoadFromStream(MemStream);
  finally
    MemStream.Free;
  end;
  CurrentNode := MyXml.ChildNodes.FindNode('results');
  if CurrentNode <> nil then
    CurrentNode := CurrentNode.ChildNodes.FindNode('result');
  if CurrentNode <> nil then
    ShowMessage(CurrentNode.ChildNodes.FindNode('ip').Text);
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#13

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 17:06
[werbung]
Hier im Forum suchenhimXML
Delphi-Quellcode:
Var XML: TXMLFile;

XML := TXMLFile.Create;
XML.asXML := MyIdHttp.Get('http://...');
With XML.RootNode.Node['result'] do Begin //With XML.Nodes['results\result'] do Begin
  S := Node['ip'].Data;
  S := Node['host'].Data;
  //...
End;
XML.Free;
[/werbung]

und mit MS-Mitteln, eventuell auch so ähnlich
Delphi-Quellcode:
Var XML: IXMLDocument; // Var XML: TXMLDocument;

XML := TXMLDocument.Create(nil);
XML.Active := True;
XML.LoadFromXML(MyIdHttp.Get('http://...'));
With XML.DocumentElement.ChildNodes['result'] do Begin
  S := ChildNodes['ip'].Text;
  S := ChildNodes['host'].Text;
  //...
End;
//XML.Free;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#14

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 17:54
Zitat:
und mit MS-Mitteln, eventuell auch so ähnlich
Var XML: IXMLDocument; // Var XML: TXMLDocument;
TXMLDocument ist nicht unbedingt MSXML. Es kommt darauf an, welchen DOM Vendor man aktiviert, es kann z.B. auch Open XML sein, der standardmäßig auch in Delphi enthalten ist. Open XML arbeitet ohne externe DLL Abhängigkeiten, bietet aber afaik die gleiche Funktionalität.

Cheers,
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#15

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 18:49
hmmmm ... das TXMLDocument von Delphi kapselt eigentlich nur das im Windows installierte MSXML.
man kann es zwar umstellen, indem man ihm einen anderen DOMVendor zuweißt (also auf Irgendwas, welches die IXMLDocument-Schnittstelle unterstützt)

OmniXML ist etwa mit den selben Schnittstellen definiert und kann entweder eine eigene DOM nutzen
oder auch nur an das MSXML weiterleiten.


(soweit ich das verstanden hab)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#16

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 19:02
Zitat von himitsu:
hmmmm ... das TXMLDocument von Delphi kapselt eigentlich nur das im Windows installierte MSXML.
TXMLDocument ist in der unit XMLDoc deklariert, diese ist unabhängig vom DOMVendor. Welcher verwendet wird, hängt nur davon ab, welche unit man zusätzlich einbindet: wenn man die Unit msxmldom benutzt, registriert sich der MSXML Parser. Bindet man oxmldom ein, der OpenXML Parser. Und mit xercesxmldom wird der Xerces Parser verwendet.

Die IDE bevorzugt msxmldom, indem sie die Unit msxmldom in die uses Liste einfügt, wenn man eine TXMLDocument Komponente auf ein Formular legt und dann kompiliert.

Wenn man ohne Formular arbeitet und die Komponente zur Laufzeit erzeugt, muss man neben XMLdoc.pas noch entweder msxmldom oder oxmldom oder xercesxmldom.pas einbinden.

Die DOM Implementationen registrieren sich automatisch als DOM Vendor (im initialization Abschnitt).

TXMLDocument ist sozusagen nur der abstrakte Container für eine der konkreten Implementierungen.
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#17

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 20:13
Also ganz egal wie TXMLDocument funktioniert (manchmal auf anderen Rechnern plötzlich nicht)...

himXML hat meiner Meinung nach für Einsteiger durchaus Vorteile.

- Nur simples Unit einbinden ohne Rahmenbedingungen beachten zu müssen.
- einfach (ich finde sogar sehr einfach) zu bedienen
- Der Programmiert tummelt sich hier (für bohrende Fragen) im Forum rum
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#18

Re: Simple XML Datei darstellen

  Alt 27. Mai 2009, 23:11
hab mal in mein Testprojekt Xerces und OpenXML eingebaut
und ich muß sagen ... die stürzen beide ab

ich lad es demnächst nochma hoch,
dann kann ja jeder mal nachsehn ... vielleicht findet ja wer den "Fehler"
> also im nächsten Update vom himXML > Datei CheckLibs.dpr
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#19

Re: Simple XML Datei darstellen

  Alt 28. Mai 2009, 10:15
OK, mit'm nächsten Update wird es noch nichts, aber hier mal das Testprogramm.

Keine AHnung, ob man da was anders machen muß, aber ich hab diese Libs genauso behandelt wie MSXML (es läuft sogar über den selben Code)
und werd' mit Exceptions zugemüllt

auch wenn ich schonmal sagen muß, das was davon läuft, lief zumindestens etwas schneller/besser als MSXML

nötig: himXML (da es in dem, zum himXML gehörenden Testprogramm nicht vorgesehn ist, dieses abzuschalten)
> himXML (Download)
Angehängte Dateien
Dateityp: dpr checklibs_675.dpr (47,1 KB, 10x aufgerufen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz