AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein XML Delphi thaxml und Leerzeichen in Attribute
Thema durchsuchen
Ansicht
Themen-Optionen

thaxml und Leerzeichen in Attribute

Ein Thema von StYxXx · begonnen am 13. Mär 2008 · letzter Beitrag vom 15. Mär 2008
Antwort Antwort
Benutzerbild von StYxXx
StYxXx

Registriert seit: 4. Mai 2006
Ort: Stuttgart
7 Beiträge
 
Delphi 7 Personal
 
#1

thaxml und Leerzeichen in Attribute

  Alt 13. Mär 2008, 20:48
Hi,


wenn ich eine xml-Datei mit einem Eintrag wie diesem habe:
<eintrag eigenschaft="hallo welt" />

Liest thaxml bei der Attribute "eigenschaft" nur bis zum ersten Leerzeichen. Ich erhalte also "hallo". Eigentlich ist der Text ja durch die Anführungszeichen (welche auch nicht mit ausgegeben werden) gekapselt. Wie bringe ich den Perser jetzt dazu wirklich alles zu beachten? Die XML-Datei liegt so bereits vor, also fällt die Idee, beim speichern das Leerzeichen zu ersetzen weg.


Grüße,
styxxx
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: thaxml und Leerzeichen in Attribute

  Alt 14. Mär 2008, 01:20
Namd,

Zitat von StYxXx:
Wie bringe ich den Perser jetzt dazu wirklich alles zu beachten?
Streicheln ? Sicher meinst du Parser.

Sorry leider kenne ich mich mit ThaXML nicht aus.
Ich hab mal fix was dazu überflogen, wozu ThaXML gut sein soll.
Zitat:
Bei den INI-Dateien wird häufig bemängelt, dass keine verschachtelte hierarchische Anordnung möglich ist, da der Aufbau einer solchen Datei dem Schema "Abschnitt"-"Wertpaare" folgt. Man hat nur eine Ein-Dimensionale Speichertiefe. Dieses Problem hat man bei der Registry nicht. Dort kann man seine Daten mit Hilfe von Schlüsseln sehr variabel verwalten. Einziger Nachteil dieser Methode: Die Registry ist nur für kleine Daten geeignet und jeder Eintrag bläht diese Datenbank zusätzlich auf. Größere Textstücke oder ähnliches gehört da nicht rein!

Um Daten hierarchisch zu speichern bietet sich das immer mehr in Mode kommende XML-Format an ... (bla bla) ... ThaXML-Library
Was hast du mit ThaXML vor?
Hast du viel Informationen, dass diese nicht in eine INI oder die Registry passen?

Oder versuchst ein "richtiges" XML-Dokument zu lesen?

Dafür schaust du dir am besten das TXmlDocument von Delphi an und lass das ThaXML sein.
Wenn es schon mein korrekten Auslesen der Attribute hapert, könnte ich mir vorstellen, dass das nicht der letzte Stolperstein mit ThaXML gewesen ist.
Letzten Endes wird ThaXML auch nur auf "normalem" Xml-Komponenten aufbauen.

Zum Thema XML gibt es in der DP zahlreiche Beiträge und Tutorials.

Nur ein gut gemeinter Rat. Sorry

Viel Erfolg.
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#3

Re: thaxml und Leerzeichen in Attribute

  Alt 14. Mär 2008, 01:37
Zitat von gmc616:
Letzten Endes wird ThaXML auch nur auf "normalem" Xml-Komponenten aufbauen.
Nein, ist genauso selbst implementiert wie meine XMLLib. Die kann ich sonst auch mal in's Rennen werfen - siehe Signatur. Und meine hat oben beschriebenes Verhalten definitiv nicht.
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: thaxml und Leerzeichen in Attribute

  Alt 14. Mär 2008, 01:45
Zitat von Muetze1:
Zitat von gmc616:
Letzten Endes wird ThaXML auch nur auf "normalem" Xml-Komponenten aufbauen.
Nein, ...
Stimmt, sonst würde ja das Lesen der Attribute funktionieren.

Trotzdem hab ich den Sinn von ThaXML oder auch Muetze's XMLLib nicht verstanden.
Wozu bedient man sich so einer Krücke? (nicht böse gemeint, Muetze1 )
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: thaxml und Leerzeichen in Attribute

  Alt 14. Mär 2008, 01:58
Zitat von gmc616:
Trotzdem hab ich den Sinn von ThaXML oder auch Muetze's XMLLib nicht verstanden.
Wozu bedient man sich so einer Krücke? (nicht böse gemeint, Muetze1 )
Steht auf der Seite: Auf D5 hat man nur die MSXML und ich habe keine Lust von irgendwelchen installierten bzw. gerade nicht installierten MSXML.DLLs abhängig zu sein und mich mit COM Objekten rumzuschlagen. Schon allein das DOM Modell von der MSXML zum Zugriff auf die Nodes ist ein Krampf. Und ich wollte damals einfach nur strukturiert Einstellungen und Daten speichern und brauchte dafür nicht tonnenweise ActiveX Overhead, der dann auf manchen Windows Versionen nicht klappt, weil dort dann die Version zu niedrig ist.

Aber es zwingt dich keiner Krücken zu verwenden. Ich verzweifle jedesmal an der widerlichen Strukturierung der Klassen bei MS XML, von daher habe ich meine Gründe. Auch ist die Lib damals nur eine Tagesarbeit gewesen und somit war es kein Aufwand sowas zu schreiben. Zwischenzeitlich wird sie aber vielseitig und umfassend genutzt an vielen Stellen und es funktioniert gut. Vor allem haben mit meiner Lib schon manche Aufgaben gelöst, die mit MS XML nicht lösbar waren (nicht mal ansatzweise). Z.B. properitäre Datenablage von anderen Firmen wo dann z.B. die Attribute mit einfachen Hochkommas abgelegt wurden. Oder dass manche Parser daran verzweifeln, wenn man Nodenamen mit einem . im Namen verwendet (z.B. Borland .bdsproj, etc). So kann man leicht auch mal spezifische Probleme lösen, wo du bei MSXML wohl an die Grenzen stoßen würdest.

Ich gehe mal davon aus, dass du MSXML als einzig wahre Implementation siehst und somit nicht als Krücke, weil alles andere selbst implementiert wurde. Oder vielleicht noch die xerces, aber wie gesagt: jedem das seine.
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#6

Re: thaxml und Leerzeichen in Attribute

  Alt 14. Mär 2008, 03:17
Okay, leuchtet ein und ist überzeugend.

Hatte zwar bis jetzt noch keine Probleme mit irgendwelchen XML-Dateien, aber Versionsproblem mit MSXML sind sehr wohl geläufig. Da hast du recht.

Danke für die Aufklärung.
  Mit Zitat antworten Zitat
Benutzerbild von StYxXx
StYxXx

Registriert seit: 4. Mai 2006
Ort: Stuttgart
7 Beiträge
 
Delphi 7 Personal
 
#7

Re: thaxml und Leerzeichen in Attribute

  Alt 15. Mär 2008, 16:48
Zitat von gmc616:
Namd,

Zitat von StYxXx:
Wie bringe ich den Perser jetzt dazu wirklich alles zu beachten?
Streicheln ? Sicher meinst du Parser.
rofl, beide

Zitat:
Was hast du mit ThaXML vor?
Hast du viel Informationen, dass diese nicht in eine INI oder die Registry passen?
In der Funktion, in der es mir auffiel kann auch inis nutzen. Werde aber im weiteren Verlauf nicht um XML herumkommen, da ich möglichst eine hirarchische Datenbank brauche.
ThaXML bot sich an, weil es das erste war, das ich damals gefunden hatte und daher Erfahrung habe. Und ich eben nicht von irgendwelchen anderen Installationen oder DLLs abhängig bin. Eigentlich wurde es auch oft empfohlen, weshalb es mich wundert, dass es da Probleme hat. Bisher kamen bei meinen Projekten wohl nie Attributen mit Leerzeichen vor.

Zitat:
Oder versuchst ein "richtiges" XML-Dokument zu lesen?
Evtl. auch das mal

Bei den anderen XML-Libs müsste ich mal schauen, ob ich sie auf anhieb verstehe und es schöne Tutorials/Beispiele gibt
  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 12:07 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