XML fait partie des formats structurés recommandés par le W3C, couramment utilisés pour stocker et transmettre des données. Les développeurs ont largement besoin de modifier les données XML stockées avec les applications. Pour faciliter l’exigence de modification, cet article explique comment modifier les données du fichier XML à l’aide de C#.

API .NET pour éditer des fichiers XML

GroupDocs.Editor fournit des solutions d’édition de documents et des API pour modifier une longue liste de différents formats de fichiers. C’est l’API .NET qui peut être utilisée avec des éditeurs externes pour l’édition visuelle. Dans cet article, nous utiliserons GroupDocs.Editor pour .NET pour modifier les données XML dans l’application .NET.

Pour télécharger le programme d’installation DLLs ou MSI, visitez la section téléchargements ou installez l’API dans votre application .NET via NuGet.

PM> Install-Package GroupDocs.Editor

Comment modifier des fichiers XML à l’aide de C#

Venant directement à l’objectif, nous allons modifier les données XML en remplaçant une valeur par une autre. Voici les étapes pour modifier ou mettre à jour le fichier XML à l’aide de C#.

  • Chargez le fichier de données XML à l’aide de la classe Editor.
  • Préparez les options d’édition XML à l’aide de la classe XmlEditOptions.
  • Pour l’édition, créez le EditableDocument comme contenu source en utilisant la méthode Edit et les options d’édition préparées.
  • À partir du EditableDocument, obtenez le contenu original du fichier XML à l’aide de la méthode GetContent.
  • Mettre à jour les valeurs dans le contenu XML.
  • Créez maintenant un nouveau EditableDocument à partir du contenu XML mis à jour à l’aide de la méthode FromMarkup.
  • Pour enregistrer le contenu mis à jour dans différents formats, préparez des options d’enregistrement pertinentes telles que WordProcessingSaveOptions ou TextSaveOptions.
  • Enregistrez les données XML mises à jour dans n’importe quel format à l’aide de la méthode Save.

L’extrait de code C# suivant montre comment modifier le fichier XML et mettre à jour les données, puis l’enregistrer ultérieurement dans un autre format.

// Modifier le fichier XML en mettant à jour les valeurs à l'aide de C#
using (Editor editor = new Editor("path/data.xml"))
{
    // Create XML editing options
    Options.XmlEditOptions editOptions = new XmlEditOptions();
    editOptions.AttributeValuesQuoteType = QuoteType.DoubleQuote;
    editOptions.RecognizeEmails = true;
    editOptions.RecognizeUris = true;
    editOptions.TrimTrailingWhitespaces = true;

    // EditableDocument Settings
    using (EditableDocument beforeEdit = editor.Edit(editOptions))
    {
        // Edit whatever
        string originalTextContent = beforeEdit.GetContent();
        string updatedTextContent = originalTextContent.Replace("John", "Samuel");

        List<IHtmlResource> allResources = beforeEdit.AllResources;

        // Create EditableDocument with updated content
        using (EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources))
        {
            // Create WordProcessing save options
            Options.WordProcessingSaveOptions wordSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
                        
            // Create TXT save options
            Options.TextSaveOptions txtSaveOptions = new TextSaveOptions();
            txtSaveOptions.Encoding = System.Text.Encoding.UTF8;

            // Save edited XML data in DOCX and TXT format
            editor.Save(afterEdit, "path/xmlData.docx", wordSaveOptions);
            editor.Save(afterEdit, "path/xmlData.txt", txtSaveOptions);
        }
    }
}

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser l’API sans les limitations d’évaluation.

Conclusion

Pour résumer, nous avons appris à modifier par programme les données de fichiers XML à l’aide de C#. Vous pouvez explorer davantage d’autres fonctionnalités de GroupDocs.Editor à l’aide de la documentation. Pour clarifier toute ambiguïté, contactez-nous sur le forum.

Voir également