I have an XML file, which is originally formatted using space indents (2 spaces for each nested item).
When I load and save this file using IXMLDocument, space indents are changing to the tab characters (code #9).
Here is the code:
var
FileName: String;
Document: IXMLDocument;
...
Document := XMLDoc.LoadXMLDocument(FileName);
Document.SaveToFile(FileName);
I tried to use NodeIndentStr property – no result:
Document := XMLDoc.LoadXMLDocument(FileName);
Document.NodeIndentStr := ' ';
Document.SaveToFile(FileName);
Used FormatXMLData too – no result:
Document := XMLDoc.LoadXMLDocument(FileName);
Document.XML.Text := XMLDoc.FormatXMLData(Document.XML.Text);
Document.Active := True;
Document.SaveToFile(FileName);
How can I save with space indents instead of tab characters?
There is an option in
IXMLDocumentwhere the parser can be told to preserve white spaces.Use it like this :
Disclaimer: I haven’t tried it.