Comment puis-je supprimer des espaces sur chaque instance d'un nœud particulier que je spécifie en C#? Par exemple, disons que j'ai le document XML suivant:Supprimer des espaces de nœuds XML
<XML_Doc>
<Record_1>
<Name>Bob</Name>
<ID_Number>12345</ID_Number>
<Sample>
</Sample>
</Record_1>
<Record_2>
<Name>John</Name>
<ID_Number>54321</ID_Number>
<Sample>
</Sample>
</Record_2>
</XML_Doc>
Ce que je voudrais est de prendre toutes les instances de la balise <Sample>
et changer la mise en forme de sorte qu'il ressemble à ceci:
<XML_Doc>
<Record_1>
<Name>Bob</Name>
<ID_Number>12345</ID_Number>
<Sample></Sample>
</Record_1>
<Record_2>
<Name>John</Name>
<ID_Number>54321</ID_Number>
<Sample></Sample>
</Record_2>
</XML_Doc>
EDIT:
L'autre application qui utilise le fichier XML n'a pas été écrite par moi et je ne peux pas modifier la structure du document XML lui-même. J'écris un utilitaire qui analyse le fichier XML et remplace chaque instance du nœud que je spécifie. L'exemple où la balise <Sample></Sample>
se trouve sur la même ligne est la façon dont le document est formaté à l'origine et dont j'ai besoin pour que l'autre application puisse le lire correctement.
On ne sait pas si vous voulez avoir juste au format XML ou si vous souhaitez conserver whitepace et d'autres caractères dans le fichier XML. Votre exemple semble supprimer les espaces, pas le préserver. –
Vous avez raison, j'ai déclaré les choses à l'envers. –
Je ne vois aucun problème avec le xml d'origine. L'application ne doit pas se comporter différemment si le noeud de fermeture est sur une autre ligne par rapport à la même ligne. L'application utilisant ce fichier XML refuse-t-elle? – shahkalpesh