powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / JSON - получить имя параметра
15 сообщений из 15, страница 1 из 1
JSON - получить имя параметра
    #39742914
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кусок JSON объекта:


Нужно пройтись циклом по параметру (объекту) searchParams и определить:
- является ли подчиненный объект простым значением;
- найти имя значения;

Не понимаю, почему разработчики не реализовали какой-нибудь метод или свойство, типа Name?

Delphi Tokyo, использую стандартный модуль System.JSON.

Вот мой код:
Код: pascal
1.
2.
3.
4.
5.
6.
    for I := 0 to Pred(jSearchParams.Count) do
    begin
      if jSearchParams.Pairs[i].JsonValue is TJSONValue then
      begin
        sName := jSearchParams.Pairs[i].что здесь;
        sVal  := jSearchParams.Pairs[i].JsonValue.Value;



почему то условие "if jSearchParams.Pairs[i].JsonValue is TJSONValue then" пропускает внутрь себя owner, хотя видно, что owner - это массив, а не Value. Или я чего-то не понял?
Спасибо.
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742921
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такс... с именем параметра разобрался (что-то похожее нашел здесь http://www.webdelphi.ru/2011/10/rabota-s-json-v-delphi-2010-xe2/ )
Код: pascal
1.
sName := jSearchParams.Pairs[i].JsonString.Value;



это ж надо такое придумать


осталось понять, как проверить тип объекта, чтобы "вылавливать" только простые значения
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742932
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742933
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В разы удобней и понятней.
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742953
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742958
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я же не просил советов, что лучше использовать.
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742963
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чем?
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742971
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreat, может, вам сделать отдельную тему для флуда
?
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742974
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11осталось понять, как проверить тип объекта, чтобы "вылавливать" только простые значения
Код: pascal
1.
if (LObj is TJSONString) or (LObj is TJSONBool) then
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742977
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_, и перечислять все возможные типы?
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742978
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

Это публичный форум.
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742979
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11почему то условие "if jSearchParams.Pairs[i].JsonValue is TJSONValue then" пропускает внутрь себя owner, хотя видно, что owner - это массив, а не Value. Или я чего-то не понял?
Спасибо.
Потому что TJSONValue -- это общий предок для всех значимых типов (т.е. TJSONArray будет являться TJSONValue). Надо проверять на конкретные типы типа TJSONString
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742990
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11и перечислять все возможные типы?Все остальные - наследники этих. Ну можешь еще TJSONNull добавить
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39742994
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я сделал if not TJSONArray
...
Рейтинг: 0 / 0
JSON - получить имя параметра
    #39743010
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11я сделал if not TJSONArrayTJsonObject забыл
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / JSON - получить имя параметра
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]