AGB  ·  Datenschutz  ·  Impressum  







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

XML Komplett auslesen

Ein Thema von Christian18 · begonnen am 17. Sep 2007 · letzter Beitrag vom 23. Sep 2007
Antwort Antwort
Seite 1 von 2  1 2      
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#1

XML Komplett auslesen

  Alt 17. Sep 2007, 20:46
Hallo,

wie kann ich mein XML Dokument komplett auslesen? Ich habe da mal ein kleines Beispiel gemacht. Oder habe ich das XML Dokument falsch aufgebaut?

XML-Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Language Lang="Deu">
  <UMain>
    <Button Name="B1" Caption="Neu" />
    <Button Name="B2" Caption="Bearbeiten" />
    <Button Name="B3" Caption="Löschen" />
  </UMain>
</Language>
Ich verwende die XML Komponente in Delphi.

Was ich vor habe:

ich will das Xml Dokument durchgehen.

Dann will ich den Button mit dem Namen B1 suchen und der soll dann die Caption "Neu" erhalten. Und so soll es immer weiter gehen, bis das XML Dokument zuende ist.
  Mit Zitat antworten Zitat
marabu

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

Re: XML Komplett auslesen

  Alt 17. Sep 2007, 21:02
Hallo Christian,

du kannst entweder einen tree walk (childNodes, rekursiv) über alle nodes des XML-Dokuments machen und die Komponenten mit FindComponent() suchen, oder du iterierst über die Komponenten deiner Form und suchst den passenden XML-Knoten mittels SelectSingleNode().

Grüße vom marabu
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#3

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 22:03
Hallo,

wie kann ich denn sowas komplett auslesen? Ich möchte einfach nacheinander die Attribute haben. Am besten in einem Record.

Den ersten Knoten von Button kann ich auslesen. Wie komme ich aber zum zweiten und dritten, ... n

LG Chris
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#4

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 22:25
Zeig doch mal den Code den du bisher hast!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#5

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 22:30
Zitat von Mackhack:
Zeig doch mal den Code den du bisher hast!
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
  var Xml : TXMLDocument;
      s : String;
begin
  Xml:=TXMLDocument.Create(Application);
  try
    Xml.FileName:=ExtractFilePath(Application.ExeName) + 'Xml.lng';
    Xml.Active:=True;

    s:=Xml.DocumentElement.ChildNodes['UMain'].ChildNodes['Button'].Attributes['Name'];
    ShowMessage(s);
  finally
    Xml.Destroy;
  end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#6

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 22:35
Ich hab noch nie mit der TXMLDocument was gemacht sondern nur Muetze1's xml lib genommen aber musst du nicht erstmal den Root aufbauen und dann von Ast zu Ast wandern?
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#7

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 22:40
Ja,

das habe ich mir auch schon gedacht, aber wie implementiere ich das? ich habe es noch nicht geschafft...
  Mit Zitat antworten Zitat
Benutzerbild von semo
semo

Registriert seit: 24. Apr 2004
755 Beiträge
 
Delphi 2010 Professional
 
#8

Re: XML Komplett auslesen

  Alt 21. Sep 2007, 23:33
ne while schleife schreiben die alle childnodes von umain durchläuft, so müsste das funktioneren.
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#9

Re: XML Komplett auslesen

  Alt 22. Sep 2007, 14:57
wann ist die bediengung der while schleife denn erfüllt??? ich suche schon die ganze zeit nach lastchild oder sowas. Ich habe noch nix gefunden.

LG Chris
  Mit Zitat antworten Zitat
Benutzerbild von semo
semo

Registriert seit: 24. Apr 2004
755 Beiträge
 
Delphi 2010 Professional
 
#10

Re: XML Komplett auslesen

  Alt 22. Sep 2007, 15:06
a little bit pseudocode:
while assigned(xmlnode) do
begin
// do something
Node := node.Next;
end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:00 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