|
|
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Посоветуйте библиотеку для JSON сериализации/десериализации. Требование: 1. Умение работать с RTTI, чтобы можно было сериализовать/десериализовать готовые объекты 2. Правильно работать со строками (выгрузка в UTF-8 с экранированием служебных символов, загрузка с пониманием экранированных символов) 3. Умение работать с List<> 4. Умение работать с перечислимыми типами 5. Возможность добавления своих сериализаторов/десериализаторов для каких-то типов. Сейчас взял JSON object serializer for Delphi от Clever Components. У него подержка только первого пункта. 4 и 5 я добавил вручную. Из 5, следует работа с 3. 2 сейчас буду пилить. Но, может есть, что более адекватное? Наверное, даже устроит отсутствие поддержки RTTI при условии, адекватной работы остальных пунктов С уважением, Vasilisk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2018, 19:33 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
В качестве предложения: Может глянуть mormot? Он умеет как-то работать с json. Даже в виде запросов к БД. В запросах мне правда не удалось разобраться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2018, 19:45 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Родное чем не устраивает? http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Serializing_User_Objects ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2018, 19:51 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
rgreatРодное чем не устраивает?Не видел. Завтра еще почитаю. А пока прикрутил к стандартному DBXJSON поддержку RTTI. Вроде, получается менее громоздко, чем использование DBXJSONReflect ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2018, 21:35 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
я всегда пользуюсь XSuperObject. По сравнению с родным все сильно лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2018, 06:51 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
забыл сказать, родной JSON от XSO содержит \u исправляю на лету этим https://bitbucket.org/vkrapotkin/unescapejson/src/master/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2018, 07:01 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
krapotkinя всегда пользуюсь XSuperObject.Как я понял, сериализацию для класса нужно писать вручную? С RTTI оно не работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2018, 11:56 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
конечно работает там же примеры на главной https://github.com/onryldz/x-superobject я все настройки программ всегда в JSON храню чтение-запись одной строкой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2018, 13:56 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
это уже не сам SO, а скорее даже надстройка на него :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2018, 13:59 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, подскажи, можно ли с этой библиотекой сделать что-то типа: Код: pascal 1. 2. и, соответственно Код: pascal 1. 2. т.е. задача: сохранить и потом восстановить какие-то конкретно указанный список свойств? все не нужны ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 09:52 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
X11 , можно ли с этой библиотекой сделать что-то типа: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 14:38 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_> написал свою обертку над стандартным System.Json. _Vasilisk_> Теперь у меня все работает через такой класс Нигде не выкладывал? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 14:45 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам Нигде не выкладывал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 14:54 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Ну если оно более-менее отделено (хотя бы в виде отдельного модуля) и не ограничены всякими корпоративными запретами - вполне можно выложить куда-нибудь (да хоть файлом сюда) даже без документации - может кому-нибудь и пригодится. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 15:03 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам может кому-нибудь и пригодится. +1 Тоже есть желание пошшупать JSON. Правда, в Лазаре уже есть вроде как готовая обертка , но посмотреть бы пригодилось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 17:47 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, Давай сами напишем Я давно хочу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 19:11 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU _Vasilisk_, Давай сами напишем Я давно хочу пиши сразу самый супербыстрый во всём мире ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 19:17 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
defecator, Какого черта здесь смешного? В данном случае скорость важна, но важнее гибкость Мне удавалось создавать очень быстрые решения сериализации/десериализации Но самые ли они быстрые - я не знаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 19:26 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Мне удавалось создавать очень быстрые решения сериализации/десериализации Очень быстрые не подходят. Нужены САМЫЕ быстрые решения. Нынешнее железо с Очень быстрыми не справится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 20:02 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Но самые ли они быстрые - я не знаю Слабак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 20:30 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Да хватит уже стебать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2020, 21:32 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Очень странно выглядит, ребята. Вы вроде как инженеры, программисты. И пытаетесь высмеивать коллегу, который действительно достигает выдающихся результатов. Если часть моих наработок действительно самые быстрые в мире - это прекрасно. А если вы не согласны с тем или иным утверждением - прошу аргументировать. По теме Я давно веду работу относительно RTTI/маршаллинга/парсинга. В C# меня очень привлекает концепция форматтера, когда одни и те же данные можно упаковать в разный формат. XML, JSON или что-то ещё. Часть кода уже есть в Tiny.Library. Часть не опубликована. Касательно XML и JSON меня смущает отсутствие компетенций. Мне нужен человек, который сможет критически подходить к тем или иным решениям, консультировать, проверять, писать автотесты. __Vasilisk__ как раз обладает экспертностью в этих форматах. P.S. Писать очередную библиотеку, которая выполняет те же действия - бессмысленно. Писать самую быструю... или самую гибкую - вот достойная цель. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 06:28 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Док> Тоже есть желание пошшупать JSON Сам JSON-то несложен, там интересен код сериализации/десериализации. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 11:01 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
По просьбам трудящихся https://github.com/anton-shchyrov/UrsJSON Если кто сделает документацию - буду рад ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 15:51 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Спасибо. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 16:27 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 18:31 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, А можешь поподробнее рассказать, как с листами работаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 18:57 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU как с листами работаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 21:03 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, Я могу сам закопаться в коде и все разузнать. Но это муторно, долго Мож ты краткий курс проведёшь Я увидел, у тебя есть определение, является ли класс TList-ом Не очень понятно, зачем сравнивать базовый модуль. Разве все листы относятся к одному модулю? Потом возникает вопрос. Нужно ли вызывать конструктор листа при чтении из формата Ну и главное. Как его заполнять? По идее лист может быть от любого типа Если захочешь ещё что-то рассказать - рассказывай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2020, 22:32 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU, list, если перевести на русский - это "список", а не "лист". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 01:00 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
s62, Очень ценное замечание ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 02:31 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Не очень понятно, зачем сравнивать базовый модуль. SOFT FOR YOU Разве все листы относятся к одному модулю? SOFT FOR YOU Нужно ли вызывать конструктор листа при чтении из формата SOFT FOR YOU По идее лист может быть от любого типа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 16:23 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, Правильно ли я понимаю По имени класса ты определяешь тип элемента листа И в зависимости от этого вручную вызываешь метод того или иного известного листа Иначе говоря TList<Double> ты сможешь сериализовать, а TList<TMyRec> нет. Так? Ещё вопрос С чем связано использование листов? Почему не TArray<>? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 17:42 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU По имени класса ты определяешь тип элемента листа Код: pascal 1. SOFT FOR YOU Иначе говоря TList<Double> ты сможешь сериализовать, а TList<TMyRec> нет. SOFT FOR YOU С чем связано использование листов? Почему не TArray<>? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 18:15 |
|
||
|
JSON Serializer/Deserializer
|
|||
|---|---|---|---|
|
#18+
Подробнее об извращении со строками здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2020, 18:28 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2037825]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
87ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 527ms |

| 0 / 0 |
