Einzelnen Beitrag anzeigen

marabu

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

Re: Wie in XML-Datei sortieren?

  Alt 1. Jun 2005, 07:49
Hallo ToKo,

voraus schicken möchte ich, dass ich dir bei einem Teilproblem im XML-Bereich helfe, dir aber für dein Projekt wahrscheinlich einen Bärendienst erweise. Du sprichst von Anforderungen, aber es ist mir nicht klar, wer die formuliert hat - du selbst oder ein anderer. Ich fürchte, dass es einfach nur Entscheidungen sind, die du vor deinem persönlichen Erfahrungshorizont getroffen hast. Ich würde einen CD-Manager voll in die Windows Shell integrieren und das Speicherformat hätte ich wahrscheinlich von FreeDB übernommen.
Der lockere Hinweis von alcaeus an dich enthält einen Wink mit dem Zaunpfahl: Wenn du alle Funktionalität in dein Stringgrid eingebaut haben wirst, dann wird jeder Betrachter sich fragen, warum du nicht gleich eine ListView genommen hast.

Aber das alles ist dein Projekt, sind deine Entscheidungen. Kommen wir zu deinem XML-Problem.

Zitat von toko:
Wie mache ich das genau? Wo muss ich diesen Code abspeichern? Muss ich dafür eine .XSL-Datei mit selben Namen wie die XML-Datei anlegen?
Zuerst brauchst du eine zweite Variable xmlStyle neben deiner xmlDoc Variable. Mit xmlDoc hast du deine XML-Daten geladen, xmlStyle nimmt den XSLT-Code auf. Bei mir sind beide vom Typ IXMLDOMDocument. Du musst abwägen, ob du nur eine oder mehrere Sortierungen benötigst. Wenn es nur um die eine Sortierung geht, dann kannst du den XSLT-Code in einer Datei mit der Erweiterung XSL speichern und diese mit xmlStyle.load() laden. Ich empfehle dir aber einen resourcestring fmtXSLsort zu verwenden, in dem du den für die Sortierung ausgewählten Knoten @titel durch %s ersetzt und vor dem Sortieren mit der Anweisung

xmlStyle.loadXML(Format(fmtXSLsort, ['@titel'])); lädst. Hier solltest du erkennen, dass mit load() eine Datei mit einem bestimmten URL geladen wird, während mit loadXML() ein XML-String geladen wird.

Grüße vom marabu
  Mit Zitat antworten Zitat