Préserver la mise en forme xml à l'aide de XmlDocument
Je suis en utilisant XmlDocument pour travailler avec xml
Comment puis-je sauver ma "XmlDocument" avec ma mise en forme?
La mise en forme actuelle:
<?xml version="1.0" encoding="utf-8"?>
<root>
<element></element>
</root>
Code:
XmlDocument testDoc = new XmlDocument();
testDoc.Load(@"C:\Test.xml");
**(do reading/writing using only XmlDocument methods)**
testDoc.Save(@"C:\Test.xml");
Il y a un sujet similaire:
Classe XmlDocument est d'enlever le formatage, c#, .NET
Accepté la réponse est PreserveWhiteSpace = true, ce qui, en réalité, supprime tous les espaces au lieu de les préserver.
Exemple:
Code:
XmlDocument testDoc = new XmlDocument();
testDoc.Load(@"C:\Test.xml");
testDoc.PreserveWhitespace = true;
testDoc.Save(@"C:\Test.xml");
Résultat:
<?xml version="1.0" encoding="utf-8"?><root><element></element></root>
PreserveWhiteSpace = true, which in reality removes all whitespaces instead of preserving them
.. Êtes-vous sûr? MSDN Dit If PreserveWhitespace is true before Load or LoadXml is called, white space nodes are preserved; otherwise, if this property is false, significant white space is preserved, white space is not.
Oui, je vais ajouter la sortie maintenant
Merci beaucoup, j'ai été de les conserver après le chargement
OriginalL'auteur Andrey | 2011-12-21
Vous devez vous connecter pour publier un commentaire.
Réglage
PreserveWhitespace
à de véritables œuvres pour moi - mais vous avez à faire, c' avant le chargement de sorte que les espaces ne sont jetés au moment du chargement:Je l'ai juste essayé, et l'espace a été préservée.
Merci beaucoup, j'ai été de les conserver après le chargement
L'esprit que
PreserveWhitespace
ne conserve que les éléments de l'indentation. Si vous avez des attributs dans de nouvelles lignes ou multi-valeurs qu'ils seront reformatés.comment éviter l'attribut se formaté?
Désolé, aucune idée.
OriginalL'auteur Jon Skeet
Umm. Je vais voir des espaces préservés lors de l'utilisation de
PreserveWhiteSpace=true
. C'était peut-êtrefalse
lorsque vous chargé?Montre:
Je vous remercie de m'avoir enseigné deux choses nouvelles: 1er: d'échappement littéral "" 2e: comment utiliser
Console.Out
dans une manière astucieuseOriginalL'auteur spender
utilisation preservewhitespace avant de le charger. Il sera de garder la mise en forme même
si vous allez l'utiliser après le chargement. il va tuer les espaces blancs entre les
OriginalL'auteur abhishek