Thema: Delphi array als xml speichern

Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#6

Re: array als xml speichern

  Alt 2. Okt 2008, 21:04
Fang' im Kleinen an und baue daraus die XML-Datei auf. (Bottom-Up-Design)
Also erst mal ein "Punkt"-Element erzeugen:
Delphi-Quellcode:
procedure TForm1.CreatePunkt(parent:IXMLDOMElement; id,x,y:integer);
var
  element, e2 : IXMLDOMElement;
begin
   element := parent.CreateElement('ein_Punkt') as IXMLDOMElement;
   parent.AppendChildNode(element);

   e2 := element.CreateElement('Id') as IXMLDOMElement;
   element.AppendChildNode(e2);
   e2.Text := IntToStr(id);

   e2 := element.CreateElement('X') as IXMLDOMElement;
   element.AppendChildNode(e2);
   e2.Text := IntToStr(x);
   ...
end;
Der Code ist ungetestet und du musst sicher noch etwas anpassen, aber der Knackpunkt ist,
dass du immer eine Procedure hast, die als Parameter ein Vaterelement (parent) übergeben bekommt.

Tip #2: die Methoden CreateElement und AppendChildNode brauchst du so oft, dass du dir eine Funktion schreiben solltest, die beides zusammenfasst.

Tip #3: definiere für deine Arrays einen Datentyp, damit du die Arrays bequem als Parameter übergeben kannst.
Delphi-Quellcode:
type
TKoordinaten = array[1..12,1..3]of integer;
TLinienarray = array[1..2] of TKoordinaten; // cool, wie man mit Pascal Datentypen wiederverwenden kann
  Mit Zitat antworten Zitat