AGB  ·  Datenschutz  ·  Impressum  







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

XML Dynamisch lesen

Ein Thema von AndreasP · begonnen am 19. Dez 2005 · letzter Beitrag vom 20. Dez 2005
Antwort Antwort
Benutzerbild von AndreasP
AndreasP

Registriert seit: 14. Aug 2003
Ort: Halle
82 Beiträge
 
Delphi 7 Professional
 
#1

XML Dynamisch lesen

  Alt 19. Dez 2005, 13:34
mahlzeit,

in einer xml datei habe ich mehrer knoten nach diesem schema:
<kategorie wert1="blablabla" wert2="blablabla" wert3="blablabla"/> um die werte zu verwenden habe ich entsprechende variablen und konstanten definiert, z.b.
Delphi-Quellcode:
{...}
var
  kategorie: array[0..2] of widestring.

const
  wert1 = 0;
  wert2 = 1;
  wert3 = 2;
{...}
und die zuweisung erfolgt dann nach diesem muster:
label1.caption := kategorie[wert1]; das funktioniert alles auch prima. nun stellt sich für mich aber die frage ob es nicht eventuell besser wäre wenn ich die string-werte erst auslese wenn ich sie brauche. ich stelle mir das nach diesem muster vor:
label1.caption := LeseXMLWert('categorie', 'wert1'); nach dieser variante würde ich mir die entsprechenden variablen und konstanten sparen. und auch der speicherverbrauch meines programmes müsste sinken. doch wie sieht es mit der performance aus. wird eine via msxml eingebundene xml-datei immer im speicher gehalten für einen erneuten zugriff oder wird sie jedes mal neu geöffnet? wie seht ihr das ganze?
Live long and prosper, Andy

Die Diskusion zum AppManager gibt es hier
Immer die aktuelle Version vom AppManger
  Mit Zitat antworten Zitat
marabu

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

Re: XML Dynamisch lesen

  Alt 19. Dez 2005, 14:03
Hallo Andy,

wenn du auf deine XML-Datei über DOM-Funktionen zugreifst, dann findet nach dem Parsen kein Zugriff auf das Quelldokument mehr statt. Wenn du ein Document Object im Hauptspeicher vorhältst, dann sind zusätzliche Variablen tatsächlich eine Verschwendung von Speicherplatz. Der Zugriff über die DOM-Funktionen ist in der Regel schnell genug, allerdings verbraucht das DOM deutlich mehr Speicher, als eine eigene Speicherstruktur.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von AndreasP
AndreasP

Registriert seit: 14. Aug 2003
Ort: Halle
82 Beiträge
 
Delphi 7 Professional
 
#3

Re: XML Dynamisch lesen

  Alt 19. Dez 2005, 14:41
mahlzeit,

wenn ich mich nicht irre läuft ja msxml über dom. das problemm ist das ich ein via:
XMLDoc := CoDomDocument40.Create; erstelltes objekt nicht wieder freigen kann da mir sonst das programm abschmiert. daher dachte ich wenn ich das object eh die ganze zeit mit mir rumschleppe wäre es eventuell sinnvoll gleich direkt auf die daten zuzugreifen. ich hab blos bedenken bezüglich der performance.
Live long and prosper, Andy

Die Diskusion zum AppManager gibt es hier
Immer die aktuelle Version vom AppManger
  Mit Zitat antworten Zitat
marabu

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

Re: XML Dynamisch lesen

  Alt 19. Dez 2005, 14:58
Zitat von AndreasP:
ich hab blos bedenken bezüglich der performance.
Einfach so? Oder weißt du mehr und willst es nur nicht mitteilen? Wenn du keine außergewöhnlichen Anforderungen hast, dann sollte der direkte Zugriff über die DOM-Funktionen kein Problem darstellen.

marabu
  Mit Zitat antworten Zitat
Benutzerbild von AndreasP
AndreasP

Registriert seit: 14. Aug 2003
Ort: Halle
82 Beiträge
 
Delphi 7 Professional
 
#5

Re: XML Dynamisch lesen

  Alt 20. Dez 2005, 09:18
mahlzeit,

danke für deine antwort. ich bin gerade dabei mein programm um zustellen und bis jetzt hab ich nix negatives bemerkt, aber bei ca. 300 werten dauert es bis ich fertig bin
Live long and prosper, Andy

Die Diskusion zum AppManager gibt es hier
Immer die aktuelle Version vom AppManger
  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 17:10 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