Salut Je veux copier un fichier XML et insérer dans un élément spécifique locaiton plus d'éléments; Quelle est la meilleure et la plus simple façon de procéder? Je peux utiliser des éléments de lecture de xmlReader et écrire un à un en me référant à chaque type - j'ai eu quelques problèmes avec cela mais à part cela cela me semble trop dur de faire mieux. dans l'exemple ci-dessous J'ai le xml comme définition par défaut besoin de créer un nouveau xml dans le même format avec l'insertion de nouvelles valeurs à sheet1 - mais après les lignes existantes, et faire la même chose pour sheet2.Copie d'un fichier xml avec l'insertion de nouveaux éléments dans un emplacement spécifique - C#
<book>
<Sheet ss:name="Sheet1">
<Table >
<Row >
<Cell/>
<Cell>
Title Name
</Cell>
<Cell >
Title Description
</Cell>
</Row>
</Sheet>
<a/>
<b/>
<Sheet ss:name="Sheet2">
<Table >
<Row >
<Cell/>
<Cell>
Title Name
</Cell>
<Cell >
Title Description
</Cell>
</Row>
</Sheet>
</book>
Semble, le fichier xmlFormat d'origine n'est pas énorme, tandis que les résultats finaux peuvent contenir quelques Mo. Avoir des liens/exemples de la façon de le faire en utilisant linq. J'ai besoin d'obtenir toutes les données jusqu'à ce que l'élément trouvé (shhet dans l'exemple) le copie au nouveau xml, insère de nouvelles données, et copie toutes les données après l'élément désiré. Merci de votre aide!!! De plus, qu'est-ce que la comparaison des avantages/désavantages entre xmlReader ou linq à xml dans ce cas? – user271077
Vous n'avez pas besoin de faire de copie si vous lisez toute la chose en mémoire: il suffit de modifier l'arbre de manière appropriée, puis enregistrez-le ensuite. L'avantage de LINQ à XML par rapport à XmlReader est que le code sera beaucoup plus simple. L'inconvénient est que vous * aurez * toutes les données en mémoire. Quelques MB ne devraient pas poser de problème du tout. Je vais écrire un petit exemple de ce que vous pourriez faire. –
Merci, j'apprécie. De quelle taille de fichier devrais-je être concerné? – user271077