AGB  ·  Datenschutz  ·  Impressum  







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

Objekte in XML speichern

Ein Thema von EConvertError · begonnen am 19. Apr 2006 · letzter Beitrag vom 4. Mai 2006
Antwort Antwort
Eisenherz

Registriert seit: 10. Jun 2002
Ort: Stadeln
33 Beiträge
 
Delphi 5 Professional
 
#1

Re: Objekte in XML speichern

  Alt 19. Apr 2006, 15:17
Hallo Andreas,

nachdem du in dem anderen Thread bereits auf mein RakBinaryStreamData hingewiesen wurdest, nehme ich an, dass Du zumindest grob weißt wofür man es verwenden kann.

Um dein XML-Problem zu lösen kannst du prinzipiell genauso vorgehen, wie ich bei RakBinaryStreamData. Der Unterschied besteht in der Hauptsache darin, dass bei dir ein XML-Format und bei RakBinaryStreamData ein binäres Format abgespeichert wird. Bei beiden Wegen kann man mit Hilfe von Tags eine hierarchische Struktur anlegen, womit das Problem der Unterobjekte gelöst wäre.
Ich gehe immer gern den Weg, dass die Klassen selbst wissen, wie sie sich "abspeichern" können. Das ist jetzt vielleicht etwas missverständlich, da die meisten unter "Abspeichern", das Speichern in einer Datei oder eine andere Serialisierung verstehen. Das "Abspeichern" ist im ersten Schritt aber noch keine Serialisierung, sondern ein Umwandlen in ein anderes Datenformat. Bei RakBinaryStreamData werden die Daten der Objekte in eine hierarchische Objektstruktur der Klassen von RakBinaryStreamData umgehängt. Bei XML werden die Daten der Objekte in eine hierarchische Objektstruktur der von dir verwendeten XML-Klassen umgehängt.
Erst danach wird durch den Aufruf der entsprechenden Methode die Serialisierung durchgeführt. Bei RakBinaryStreamData kommt dabei ein binärer KuddelMuddel heraus, bei XML eine Textdatei.

Aber wieder zurück dazu, dass die Klassen die Daten selbst "abspeichern", sprich in ein anderes Format umhängen. Dazu verpasse ich den Klassen immer die Methode

Code:
procedure SaveToBinaryTag(Tag: TRakBinaryTag);
Für XML hattest du in dem anderen Thread ja schon etwas ähnliches angedacht, nämlich

Code:
procedure SaveToXML(const XmlDoc: IXMLDocument);
Hier darfst du als Parameter aber nicht die Document-Klasse verwenden, sondern die Tag-Klasse deines XML-"Parser". (so nebenbei: ich verwende bevorzugt OpenXML)


Ich hoffe das reicht als Anstoß
aloa Eisenherz
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz