Перейти к основному содержимому

Janx

Модуль 1С/OSOPI_JanxКоманда CLIjanx#Использоватьoint/formats/janx

Этот раздел посвящен библиотеке для работы с форматом Janx в 1С:Предприятие, OneScript и CLI. На данной странице описаны все действия, необходимые для полноценного начала работы

О формате Janx

Janx — это специализированный формат сериализации данных, который эффективно сочетает текстовое представление структурированных данных (JSON) с двоичными блоками. Формат разработан для случаев, когда необходимо передавать или хранить сложные структуры данных, содержащие как обычные значения, так и двоичные данные (изображения, файлы и т.д.).

Структура формата

Формат Janx состоит из следующих частей:

  1. Заголовок (10 байт):

    • 2 байта — версия формата
    • 4 байта — размер JSON-части
    • 4 байта — количество двоичных блоков
  2. JSON-часть — структурированное описание данных, где двоичные данные заменены специальными маркерами

  3. Приложение — последовательность двоичных блоков данных

Основные возможности

  • Сериализация произвольных структур данных (Структура, Соответствие, Массив)
  • Автоматическая обработка вложенных коллекций
  • Эффективное хранение двоичных данных
  • Компактное представление данных
  • Поддержка версионирования формата

Начало работы

Для работы с форматом Janx не требуется предварительная настройка или авторизация. Библиотека предоставляет две основные функции:

Сериализация данных

Для преобразования данных в формат Janx используйте функцию СериализоватьДанные:

Данные = Новый Структура;
Данные.Вставить("Имя", "Иван");
Данные.Вставить("Возраст", 30);

// Добавление двоичных данных
Файл = Новый ДвоичныеДанные("photo.jpg");
Данные.Вставить("Фото", Файл);

// Сериализация
СериализованныеДанные = OPI_Janx.СериализоватьДанные(Данные);

Десериализация данных

Для восстановления данных из формата Janx используйте функцию ДесериализоватьДанные:

// Десериализация
ВосстановленныеДанные = OPI_Janx.ДесериализоватьДанные(СериализованныеДанные);

// Доступ к данным
Имя = ВосстановленныеДанные["Имя"];
Фото = ВосстановленныеДанные["Фото"]; // ДвоичныеДанные