Ответ
XML (eXtensible Markup Language) — это строгий текстовый формат разметки для хранения и передачи структурированных данных. Он определяет набор правил для кодирования документов в формате, который одновременно читаем человеком и машиной.
Основные характеристики:
- Самодокументируемость: структура данных описывается тегами и атрибутами.
- Строгий синтаксис: требует корректной вложенности, закрывающих тегов и может быть проверен на соответствие схеме (XSD/DTD).
- Платформо- и языконезависимость.
- Поддержка пространств имен (namespaces) для избежания конфликтов имен тегов.
Области применения: конфигурационные файлы (например, .csproj), веб-сервисы (SOAP), обмен данными между разнородными системами, документы офисных пакетов (DOCX, XLSX).
Пример XML-документа:
<?xml version="1.0" encoding="UTF-8"?>
<catalog xmlns="http://example.org/books">
<book id="bk101">
<author>Гамма, Эрих</author>
<title>Приемы объектно-ориентированного проектирования. Паттерны проектирования</title>
<genre>Компьютерная литература</genre>
<price>44.95</price>
<publish_date>1994-10-01</publish_date>
</book>
</catalog>
Работа с XML в C#: В .NET доступно несколько API, выбор зависит от задачи:
-
LINQ to XML (
XDocument,XElement) — современный и рекомендуемый подход:// Чтение XDocument doc = XDocument.Load("books.xml"); var titles = doc.Descendants("title") .Select(e => e.Value) .ToList(); // Создание XElement newBook = new XElement("book", new XAttribute("id", "bk102"), new XElement("title", "CLR via C#") ); XmlDocument(DOM-модель): Загружает весь документ в память, удобна для навигации и редактирования.XmlReader/XmlWriter: Потоковое чтение и запись с минимальным потреблением памяти, идеально для больших файлов.
Видео-ответы
▶
▶
▶
▶
▶
▶
▶
▶