VB. Создание XML-файлов (элементы, атрибуты, содержимое)

Создание XML-файлов с помощью XmlTextWriter. Запись элементов и их текстового содержимого. Запись атрибутов и их текстового содержимого. Форматирование.


XML-файлы в настоящее время используются в основном для обмена данными между приложениями, а создавать их в ‎Visual Basic‎ проще всего с помощью XmlTextWriter. У меня XmlTextWriter применяется в коде конвертера, преобразующего информацию из EXCEL-файлов поставщиков пива в в XML-файлы для загрузки в программу «Декларант-Алко». Далее простые примеры, как создавать XML-файлы с помощью XmlTextWriter, добавлять элементы, атрибуты и их текстовое содержимое.

Пример 1

Создание Xml-файла, запись элементов и их текстового содержимого

Создадим Xml-файл и запишем в него информацию из таблицы «Работники» следующим образом: имя таблицы как элемент первого уровня, наименование должности работника как элемент второго уровня, а табличные значения ФИО как текстовое содержимое элемента второго уровня:

Работники

Должность ФИО
Дворник Иванов И.И.
Инженер Петров П.П.

Две команды «.WriteEndElement()» закомментированы, так как их выполняет метод «.WriteEndDocument()», который закрывает все незакрытые элементы и атрибуты (стоит отметить, если не записать закрывающий тег первого вложенного элемента, то второй вложенный элемент откроется как элемент третьего уровня).

Результат выполнения кода примера 1:

Пример 2

Создание Xml-файла, запись элементов, атрибутов и их текстового содержимого

Создадим Xml-файл и запишем имя таблицы как элемент первого уровня, наименование должности работника как элемент второго уровня, названия граф («Фамилия», «Имя» и «Отчество») как атрибуты элемента «Наименование должности», а табличные значения ФИО как текстовое содержимое атрибутов:

Работники

Должность Фамилия Имя Отчество
Дворник Иванов Иван Иванович
Инженер Петров Петр Петрович

Результат выполнения кода примера 2:

Пример 3

Запишем имя таблицы как элемент первого уровня, слово «Работник» как элемент второго уровня, «id» и «ФИО» как атрибуты элемента «Работник», «Год_рождения», «Паспорт» и «Должность» как вложенные элементы третьего уровня, «серия» и «номер» как атрибуты элемента «Паспорт», а также применим форматирование к документу XML:

Работники

Id
работника
ФИО Год_
рождения
Паспорт Должность
серия номер
1 Иванов И.И. 1956 22 22 222222 дворник
2 Петров П.П. 1967 33 33 333333 инженер

Результат выполнения кода примера 3:

Примечания

1. При открытии XML-файлов из примеров 1 и 2 в текстовом редакторе, их код будет расположен в одной строке, а отформатированный код из примера 3 отобразится в текстовом редакторе так же, как и в браузере.

2. Атрибуты, в зависимости от программы, могут отображаться не в том порядке, как записаны в исходном XML-файле. При тестировании в Google Chrome, Notepad++ последовательность оказалась та же, что и в примерах, а в Internet Explorer 10 атрибуты отобразились в обратном порядке.

Добавить комментарий

Ваш комментарий будет опубликован после прохождения обязательной модерации. Исходящие ссылки не допускаются. Время модерации составит от нескольких минут до нескольких часов в зависимости от времени суток и занятости модератора. При добавлении в комментарий кода VBA Excel, вставьте перед его началом тег <pre> и по окончании кода </pre>.