Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   XML (https://www.delphipraxis.net/46-xml/)
-   -   Delphi neu abgespeicherte Nodes sind ohne Zeilenumbruch im XML (https://www.delphipraxis.net/136818-neu-abgespeicherte-nodes-sind-ohne-zeilenumbruch-im-xml.html)

schwa226 8. Jul 2009 14:27


neu abgespeicherte Nodes sind ohne Zeilenumbruch im XML
 
Hi,

ich habe noch eine kurze Frage bezüglich XML-Abspeichern!

Wenn ich ein File mit Load(mein.xml) lade und bearbeite (Node hinzufüge) und dieses dann Save dann ist der neue Node in einer Zeile:
Zitat:

<program location="C:\Program Files\Internet Explorer\IEXPLORE.EXE"><Paramter/><Show>1</Show></program>
Aber eigentlich sollte es ja so aussehen:
Zitat:

<program location="C:\Program Files\Internet Explorer\IEXPLORE.EXE">
<Paramter/>
<Show>1</Show>
</program>
Wie kann ich das umstellen?

mjustin 8. Jul 2009 14:55

Re: neu abgespeicherte Nodes sind ohne Zeilenumbruch im XML
 
Zitat:

Zitat von schwa226
Hi,

ich habe noch eine kurze Frage bezüglich XML-Abspeichern!

Wenn ich ein File mit Load(mein.xml) lade und bearbeite (Node hinzufüge) und dieses dann Save dann ist der neue Node in einer Zeile:
Zitat:

<program location="C:\Program Files\Internet Explorer\IEXPLORE.EXE"><Paramter/><Show>1</Show></program>
Aber eigentlich sollte es ja so aussehen:
Zitat:

<program location="C:\Program Files\Internet Explorer\IEXPLORE.EXE">
<Paramter/>
<Show>1</Show>
</program>
Wie kann ich das umstellen?

* je nach verwendeter XML Bibliothek gibt es eventuell aber eine Property wie preserveWhiteSpace oder eine Option doNodeAutoIndent, einfach mal alle Möglichkeiten durchsehen :)

* für selbstgestricktes XML gibt es zum Formatieren auch eine Funktion FormatXmlData aus der XMLDoc Unit.

Viele Grüße,

schwa226 8. Jul 2009 16:32

Re: neu abgespeicherte Nodes sind ohne Zeilenumbruch im XML
 
Delphi-Quellcode:
var
  doc: IXMLDOMDocument;
  xHTPCNoteNode, xHTPCNodeChild: IXMLDOMNode;
  xHTPCNodes: IXMLDOMNodeList;
  xHTPCElement : IXMLDOMElement;
begin

    doc := CoDOMDocument.Create;
  with doc do
  begin
    async := false;
    preserveWhiteSpace := True;
    Load(XmlFilePath); // can fail
  end;
Habe es mit preserveWhiteSpace := True und False probiert, jedoch hat sich nichts geändert! :(

Immer noch einfach alles in eine Zeile!

SirThornberry 8. Jul 2009 16:37

Re: neu abgespeicherte Nodes sind ohne Zeilenumbruch im XML
 
Zitat:

Aber eigentlich sollte es ja so aussehen:
Warum? Die Daten sollten doch in beiden Fällein gleich aussehen und es ist einfach nur eine andere Art der Formatierung.
Vielleicht gibt es ja eine andere Art dein Problem zu lösen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:59 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