![]() |
AW: VerySimpleXML: Problem unter iOS?
Wie sieht es denn hier aus?
Delphi-Quellcode:
XMLObj.Ident := '';
Memo1.Lines.Text := XMLObj.Text; |
AW: VerySimpleXML: Problem unter iOS?
Zitat:
|
AW: VerySimpleXML: Problem unter iOS?
Liste der Anhänge anzeigen (Anzahl: 1)
Anbei ein Demoprojekt inklusive der beanstandeten XML-Datei. Suchpfad (.\source) und Bereitstellung (StartUp\Documents) für die XML-Datei sind ggf noch anzupasssen.
|
AW: VerySimpleXML: Problem unter iOS?
Ich prüfe es dann nach der Arbeit nochmal und lad es hier zum Testen hoch.
Wie gesagt, diese Dinge haben aber erstmal mir dem hier genannten Problem nichts zu tun. - bissl Unicode-Zeugs, potentielle Speicherlecks (die aber en nicht oft auftreten sollten), ... - das mit dem Zeilenumbruch
Delphi-Quellcode:
(daß sich die klasse bei so einigen Dingen nicht an die XML-Deklaration halten, ignorier ich hier einfach mal ... dafür isses halt klein und "einfach")
function TXmlVerySimple.GetText: String;
begin Lines.Clear; Lines.LineBreak := IfThen(Ident = '', '', sLineBreak); Ich hoffe mal das hier gibt den ersten Node zurück:
Delphi-Quellcode:
Was zeigt da denn das Memo an?
Memo1.Lines.Text := '"' + XMLObj.Root.ChildNodes[0].Text + '"';
> Also ob der Fehler schon beim Einlesen oder erst beim Speichern auftritt. |
AW: VerySimpleXML: Problem unter iOS?
Liste der Anhänge anzeigen (Anzahl: 1)
Vielen Dank für eure Antworten!
Zitat:
Ein Testprojekt lade ich gleich hoch, wobei dieser sich nicht viel von Unions Testcode unterscheiden wird. Ich spare mir nur den Zugriff auf die Dateisystem, indem ich mir eine fertige XML-Datei vom Webserver lade. Ansonsten alles gleich. Zitat:
|
AW: VerySimpleXML: Problem unter iOS?
Wenn das die XML ist, dann sollte es nicht am StreamReader liegen, oder zeigt bei jemandem der Debugger in der Variable "Line" ein zeichen "A" und "<" an?
(sollte nicht, da Keines da ist) - wenn das "Zeichen" in XMLNode.Text drin ist, dann ist es eher eine Art "Buffer-Overrun" in der Parse-Funktion des TVerySimpleXML - oder es ist ein "Bug" beim Zusammenbauen der XML-Ausgabe im TVerySimpleXML (wäre ungewöhnlich, wenn der erst im StreamWriter auftritt) |
AW: VerySimpleXML: Problem unter iOS?
Das Problem liegt wohl in der Verarbeitung der letzten Verschachtelungsebene:
Delphi-Quellcode:
Das ergibt immer true, da auf Node.Text abgefragt wird - der ist ja bei einem schließenden Tag in dem Fall immer leer. Es sollte zusätzlich Node.Parent.Text überprüft werden um das Flag zu setzen.
IsSelfClosing := (Length(Node.Text) = 0) and (Node.ChildNodes.Count = 0)
|
AW: VerySimpleXML: Problem unter iOS?
Zitat:
<nixdrin/> oder <nixdrin></nixdrin> das ist unabhängig vom Parent Text |
AW: VerySimpleXML: Problem unter iOS?
Zitat:
|
AW: VerySimpleXML: Problem unter iOS?
Unter welcher Delphi Version tritt denn das Problem auf?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:24 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