XML jest jednym z zalecanych przez W3C, ustrukturyzowanych formatów, powszechnie używanych do przechowywania i przesyłania danych. Programiści bardzo wymagają edycji przechowywanych danych XML za pomocą aplikacji. Aby ułatwić edytowanie, w tym artykule opisano sposób edytowania danych pliku XML przy użyciu języka C#.

.NET API do edycji plików XML

GroupDocs.Editor zapewnia rozwiązania do edycji dokumentów i interfejsy API do edytowania dużej listy różnych formatów plików. Jest to interfejs API platformy .NET, którego można używać wraz z zewnętrznymi edytorami do edycji wizualnej. W tym artykule użyjemy GroupDocs.Editor for .NET do edycji danych XML w aplikacji .NET.

Aby pobrać instalator DLL lub MSI, odwiedź sekcję pobierania lub zainstaluj interfejs API w swojej aplikacji .NET za pośrednictwem NuGet.

PM> Install-Package GroupDocs.Editor

Jak edytować pliki XML za pomocą C#

Przechodząc od razu do celu, zmodyfikujemy dane XML poprzez zamianę wartości na inną. Poniżej przedstawiono kroki edytowania lub aktualizowania pliku XML przy użyciu języka C#.

  • Załaduj plik danych XML przy użyciu klasy Editor.
  • Przygotuj opcje edycji XML za pomocą klasy XmlEditOptions.
  • Do edycji utwórz EditableDocument jako treść źródłową, korzystając z metody Edit i przygotowanych opcji edycji.
  • Z EditableDocument pobierz oryginalną zawartość pliku XML za pomocą metody GetContent.
  • Zaktualizuj wartości w treści XML.
  • Teraz utwórz nowy EditableDocument ze zaktualizowanej zawartości XML za pomocą metody FromMarkup.
  • Aby zapisać zaktualizowaną treść w różnych formatach, przygotuj odpowiednie opcje zapisu, takie jak WordProcessingSaveOptions lub TextSaveOptions.
  • Zapisz zaktualizowane dane XML w dowolnym formacie za pomocą metody Save.

Poniższy fragment kodu C# pokazuje, jak edytować plik XML i aktualizować dane, a następnie zapisywać je w dowolnym innym formacie.

// Edytuj plik XML, aktualizując wartości za pomocą C#
using (Editor editor = new Editor("path/data.xml"))
{
    // Utwórz opcje edycji XML
    Options.XmlEditOptions editOptions = new XmlEditOptions();
    editOptions.AttributeValuesQuoteType = QuoteType.DoubleQuote;
    editOptions.RecognizeEmails = true;
    editOptions.RecognizeUris = true;
    editOptions.TrimTrailingWhitespaces = true;

    // Edytowalne ustawienia dokumentu
    using (EditableDocument beforeEdit = editor.Edit(editOptions))
    {
        // Edytuj cokolwiek
        string originalTextContent = beforeEdit.GetContent();
        string updatedTextContent = originalTextContent.Replace("John", "Samuel");

        List<IHtmlResource> allResources = beforeEdit.AllResources;

        // Utwórz dokument edytowalny ze zaktualizowaną zawartością
        using (EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources))
        {
            // Utwórz opcje zapisywania WordProcessing
            Options.WordProcessingSaveOptions wordSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
                        
            // Utwórz opcje zapisywania TXT
            Options.TextSaveOptions txtSaveOptions = new TextSaveOptions();
            txtSaveOptions.Encoding = System.Text.Encoding.UTF8;

            // Zapisz edytowane dane XML w formacie DOCX i TXT
            editor.Save(afterEdit, "path/xmlData.docx", wordSaveOptions);
            editor.Save(afterEdit, "path/xmlData.txt", txtSaveOptions);
        }
    }
}

Uzyskaj bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję, aby korzystać z API bez ograniczeń ewaluacyjnych.

Wniosek

Podsumowując, nauczyliśmy się programowo edytować dane pliku XML przy użyciu języka C#. Możesz dokładniej zapoznać się z innymi funkcjami GroupDocs.Editor, korzystając z dokumentacji. Aby wyjaśnić wszelkie niejasności, skontaktuj się z nami na forum.

Zobacz też