Сериализация и десериализация Generics

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Сериализация и десериализация Generics

Сообщение veb86 » 29.12.2018 11:09:59

Здравствуйте! Хочу сохранение настроек сделать в XML или JSON. Настройки будут настраиваться внутри программы и хочу реализовать возможность их добавления или удаления, например создание своих типов. Я такое делал на C# и это было очень удобно.
Получается что у меня есть настройки которые будут хранится в виде списка. Генерики очень хорошо подходят быть этими списками. Найти пример сериализации не получается, только на сайте http://robstechcorner.blogspot.com/2009/10/xml-serialization-basic-usage.html человек делает то что мне нужно но это Delphi 2010. При компиляции не находит библиотеки.
Помогите с примером или хорошей статьей, во что будет делаться сериализация в JSON или XML не важно.
veb86
новенький
 
Сообщения: 62
Зарегистрирован: 16.03.2016 12:58:35

Re: Сериализация и десериализация Generics

Сообщение Снег Север » 29.12.2018 11:43:10

Хорошего не встречал, но можно глянуть сюда:
https://github.com/richtext/pascal2xml
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 3039
Зарегистрирован: 27.11.2007 16:14:47

Re: Сериализация и десериализация Generics

Сообщение Ichthyander » 29.12.2018 11:49:48

http://wiki.freepascal.org/Streaming_JSON/ru
Также обращу внимание, что в Lazarus формы и компоненты могут прекрасно сохранять себя сами. На палитре компонентов TXMLPropStorage, TINIPropStorage, TJSONPropStorage. Добавляются на форму. Нужные компоненты и свойства для хранения выбираются в свойстве SessionProperties.
У наследников TPersistent есть метод для сохранения и загрузки себя в потоке SaveToStream, LoadFromStream

Добавлено спустя 4 минуты 17 секунд:
Но это все без Generics, но нативное
Аватара пользователя
Ichthyander
энтузиаст
 
Сообщения: 686
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань


Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14

Рейтинг@Mail.ru