Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2017, 19:16   #1
istory
Новичок
Джуниор
 
Регистрация: 06.08.2012
Сообщений: 1
По умолчанию Парсинг JSON

Всем привет! Я истошен количеством информации которую прочитал на просторах интернет, но так и не получил ответ наверно тупой как топор.

Суть вопроса получить данные из API https://coinmarketcap.com/api/ а именно распарсить данные данного ответа https://api.coinmarketcap.com/v1/ticker/bitcoin/

[
{
"id": "bitcoin",
"name": "Bitcoin",
"symbol": "BTC",
"rank": "1",
"price_usd": "9999.95",
"price_btc": "1.0",
"24h_volume_usd": "5727980000.0",
"market_cap_usd": "167064034676",
"available_supply": "16706487.0",
"total_supply": "16706487.0",
"max_supply": "21000000.0",
"percent_change_1h": "-0.85",
"percent_change_24h": "3.04",
"percent_change_7d": "22.03",
"last_updated": "1511876052"
}
]

Нужно вывести значения price_usd в перемеренную и отобразить в label. Вроде все просто загнать в массив разобрать и получить искомое. Но моя проблема в том что плохо понимаю как обращаться к значениям да и вообще в программирование 1+ Пробовал библиотеки SuperObject, REST, DBXJSON. Что получилось так это получить ответ от сервера и вывести его в memo.

REST Libary:

procedure TForm1.RESTRequest1AfterExecute(Sen der: TCustomRESTRequest);
begin
memo1.Lines.Text := RESTResponse1.Content;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
JsonObject, GContact: ISuperObject;
JsonStream: TStringStream;
JsonArray: TSuperArray;
i: integer;
begin
JsonStream := TStringStream.Create;
try
//загружаем файл
JsonStream.LoadFromFile('1.txt');
//создаем объект
JsonObject := SO(JsonStream.DataString);
//получаем массив entry
JsonArray := JsonObject.A['id'];
if Assigned(JsonArray) then
//читаем названия контактов из title

for i := 0 to JsonArray.Length - 1 do
begin
GContact := JsonArray.O[0];
Memo1.Lines.Add(Utf8ToAnsi(GContact .s['price_usd']));
end;
finally
JsonStream.Free;
end;

end;

И все тупик помогите плыз тыкныте палцем как правильно и что где читать.

Последний раз редактировалось istory; 28.11.2017 в 21:34.
istory вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг JSON и вывод token ffirstal4 Общие вопросы Delphi 6 22.08.2017 12:16
Парсинг string в БД. json. c# zink Общие вопросы .NET 1 05.06.2016 10:02
Парсинг JSON. (X-SuperObject) Delphi XE8 mailkyda Общие вопросы Web 1 23.05.2016 07:13
Парсинг JSON и занос его к stringgrid ffirstal4 Общие вопросы Delphi 3 17.03.2015 10:36
Парсинг массива в json C_R_E_S_C_H Общие вопросы Delphi 0 12.05.2012 23:39