XML входит в число рекомендованных W3C структурированных форматов, обычно используемых для хранения и передачи данных. Разработчикам крайне необходимо редактировать сохраненные XML-данные с помощью приложений. Чтобы упростить редактирование, в этой статье рассказывается, как редактировать данные XML-файла с помощью C#.
.NET API для редактирования файлов XML
GroupDocs.Editor предоставляет решения для редактирования документов и API для редактирования большого списка различных форматов файлов. Это .NET API, который можно использовать вместе с внешними редакторами для визуального редактирования. В этой статье мы будем использовать GroupDocs.Editor for .NET для редактирования данных XML в приложении .NET.
Чтобы загрузить DLL или MSI, посетите раздел загрузок или установите API в своем приложении .NET с помощью NuGet.
PM> Install-Package GroupDocs.Editor
Как редактировать XML-файлы с помощью C#
Переходя прямо к цели, мы изменим данные XML, заменив одно значение другим. Ниже приведены шаги по редактированию или обновлению XML-файла с помощью C#.
- Загрузите файл данных XML с помощью класса Editor.
- Подготовьте параметры редактирования XML с помощью класса XmlEditOptions.
- Для редактирования создайте EditableDocument в качестве исходного контента, используя метод Edit и подготовленные параметры редактирования.
- Из EditableDocument получите исходное содержимое XML-файла с помощью метода GetContent.
- Обновление значений в XML-содержимом.
- Теперь создайте новый EditableDocument из обновленного содержимого XML, используя метод FromMarkup.
- Для сохранения обновленного содержимого в разных форматах подготовьте соответствующие параметры сохранения, например WordProcessingSaveOptions или TextSaveOptions.
- Сохраните обновленные данные XML в любом формате, используя метод Сохранить.
В следующем фрагменте кода C# показано, как редактировать XML-файл и обновлять данные, а затем сохранять их в любом другом формате.
// Отредактируйте файл XML, обновив значения с помощью C#
using (Editor editor = new Editor("path/data.xml"))
{
// Создание параметров редактирования XML
Options.XmlEditOptions editOptions = new XmlEditOptions();
editOptions.AttributeValuesQuoteType = QuoteType.DoubleQuote;
editOptions.RecognizeEmails = true;
editOptions.RecognizeUris = true;
editOptions.TrimTrailingWhitespaces = true;
// Настройки редактируемого документа
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
// Редактировать что угодно
string originalTextContent = beforeEdit.GetContent();
string updatedTextContent = originalTextContent.Replace("John", "Samuel");
List<IHtmlResource> allResources = beforeEdit.AllResources;
// Создать EditableDocument с обновленным содержимым
using (EditableDocument afterEdit = EditableDocument.FromMarkup(updatedTextContent, allResources))
{
// Создать параметры сохранения WordProcessing
Options.WordProcessingSaveOptions wordSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
// Создайте параметры сохранения TXT
Options.TextSaveOptions txtSaveOptions = new TextSaveOptions();
txtSaveOptions.Encoding = System.Text.Encoding.UTF8;
// Сохраняйте отредактированные данные XML в формате DOCX и TXT.
editor.Save(afterEdit, "path/xmlData.docx", wordSaveOptions);
editor.Save(afterEdit, "path/xmlData.txt", txtSaveOptions);
}
}
}
Получить бесплатную лицензию
Вы можете получить бесплатную временную лицензию, чтобы использовать API без ограничений пробной версии.
Вывод
Подводя итог, мы научились программно редактировать данные файла XML с помощью C#. Вы можете дополнительно изучить другие функции GroupDocs.Editor, используя документацию. Чтобы прояснить любую неясность, свяжитесь с нами на форуме.