An open API service indexing awesome lists of open source software.

https://github.com/oscript-library/xml-parser

Библиотека для чтения и записи xml данных
https://github.com/oscript-library/xml-parser

Last synced: 1 day ago
JSON representation

Библиотека для чтения и записи xml данных

Awesome Lists containing this project

README

          

# xml-parser
[![Stars](https://img.shields.io/github/stars/khorevaa/xml-parser.svg?label=Github%20%E2%98%85&a)](https://github.com/khorevaa/xml-parser/stargazers)
[![Release](https://img.shields.io/github/tag/khorevaa/xml-parser.svg?label=Last%20release&a)](https://github.com/khorevaa/xml-parser/releases)
[![Открытый чат проекта https://gitter.im/EvilBeaver/oscript-library](https://badges.gitter.im/khorevaa/xml-parser.png)](https://gitter.im/EvilBeaver/oscript-library)

[![Build Status](https://travis-ci.org/khorevaa/xml-parser.svg?branch=master)](https://travis-ci.org/khorevaa/xml-parser)
[![Coverage Status](https://coveralls.io/repos/github/khorevaa/xml-parser/badge.svg?branch=master)](https://coveralls.io/github/khorevaa/xml-parser?branch=master)

# Библиотека для cериализации данных в xml

Библиотека предназначена для записи и чтения данных XML для

# Установка

Для установки необходимо:
* Скачать файл *.ospx из раздела [releases](https://github.com/khorevaa/xml-parser/releases)
* Воспользоваться командой:

```
opm install -f <ПутьКФайлу>
```
или

```
opm install xml-parser
```

# Особенности работы

## Чтение данных из XML

* При чтении библиотека получает для каждого узла `Соответствие` со следующими ключами
* `_Атрибуты` - соответствие с атрибутами узла
* `_Комментарий` - Строка - строка содержащая комментарии узла
* `_CDATA` - Строка - строка содержащая данные CDATA узла
* `_Значение` - Строка - строка значение узла
* `_Элементы` - Массив, Соответствие - вложенные узлы
* После чтение по умолчанию производится попытка упрощения результата чтения
* если заполнено только `_Значение` - тогда присваивается результату чтения узла `_Значение`
* если заполнено только `_Элементы` - тогда присваивается результату чтения узла `_Элементы`
* во всех остальных случаях присутствуют только заполненные ключи соответствия

## Запись данных в XML

При сериализации данных используются предопределенные ключи:

* `_Атрибуты` - соответствие с атрибутами узла
* `_Комментарий` - Строка - строка содержащая комментарии узла
* `_CDATA` - Строка - строка содержащая данные CDATA узла
* `_Значение` - Строка - строка значение узла
* `_Элементы` - Массив, Соответствие - вложенные узлы

# Пример работы:

* Чтение данных из файла
```bsl

#Использовать xml-parser

//<ФайлПФР>
// <ИмяФайла>
// <НазваниеФормата>fb2НазваниеФормата>
// <НазваниеПрограммы />
// ИмяФайла>
//ФайлПФР>

ПутьКФайлу = "ТутНуженПутьКФайлу";

ПроцессорXML = Новый СериализацияДанныхXML();

РезультатЧтения = ПроцессорXML.ПрочитатьИзФайла(ПутьКФайлу);

Сообщить(РезультатЧтения["ФайлПФР"]["ИмяФайла"]["НазваниеФормата"]);

```

* Запись данных в файл
```bsl

#Использовать xml-parser

ПутьКФайлу = "ТутНуженПутьКФайлу";

ПроцессорXML = Новый СериализацияДанныхXML();
ДанныеЗаписиXML = Новый Структура("name", "Наименование");

ПроцессорXML.ЗаписатьВФайл(ДанныеЗаписиXML, ПутьКФайлу);

// Содержимое файла
//Наименование

```

## Публичный интерфейс

[Документация публичного интерфейса](docs/README.md) (в разработке)

## Доработка

Доработка проводится по git-flow. Жду ваших PR.

## Лицензия

Смотри файл [`LICENSE`](LICENSE).