Kod: Tümünü seç
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.StrUtils, System.JSON, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, RzStatus, Vcl.ExtCtrls, RzPanel, Vcl.StdCtrls, Vcl.ComCtrls;
type
TForm1 = class(TForm)
Calistir: TButton;
JsonSonucu: TMemo;
procedure CalistirClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CalistirClick(Sender: TObject);
var
I:Integer;
JSonArabalar:TJsonArray;
Araba, JsonFiyatlar:TJSonObject;
ArabaFiyati:Double;
ArabaMarkasi, ArabaModeli, ArabaYili, ArabaParaBirimi:String;
Json:String;
begin
Json:='';
Json:=Json+'[';
Json:=Json+' {"Markalar":"Ferrari", "Modeller":"SF90 Stratade", "Yili":2020, "Fiyatlar":{"Fiyati":15000, "PS":"EUR"}},';
Json:=Json+' {"Markalar":"Ford", "Modeller":"viper", "Yili":2013, "Fiyatlar":{"Fiyati":24000, "PS":"EUR"}},';
Json:=Json+' {"Markalar":"Bmw", "Modeller":"Z4", "Yili":2008, "Fiyatlar":{"Fiyati":32000, "PS":"EUR"}},';
Json:=Json+' {"Markalar":"Mercedes", "Modeller":"SLK", "Yili":2001, "Fiyatlar":{"Fiyati":47000, "PS":"EUR"}},';
Json:=Json+' {"Markalar":"Visera", "Modeller":"2018", "Yili":2020, "Fiyatlar":{"Fiyati":61000, "PS":"TL"}},';
Json:=Json+' {"Markalar":"Sercedes", "Modeller":"MLK", "Yili":2005, "Fiyatlar":{"Fiyati":65000, "PS":"USD"}}';
Json:=Json+']';
JSonArabalar:=TJsonObject.ParseJsonValue(Json) as TJsonArray;
If not Assigned(JSonArabalar) Then Exit;
try
JsonSonucu.Clear;
For I:=0 to JSonArabalar.Count-1 Do
begin
try
{Object}Araba := JSonArabalar.Get(I) as TJsonObject; //Object
ArabaMarkasi := Araba.Get('Markalar').JsonValue.Value;
ArabaModeli := Araba.Get('Modeller').JsonValue.Value;
ArabaYili := Araba.Get('Yili').JsonValue.Value;
{Object}JsonFiyatlar := Araba.Get('Fiyatlar').JsonValue as TJsonObject;
ArabaFiyati := (JsonFiyatlar.Get('Fiyati').JsonValue as TJsonNumber).AsDouble;
ArabaParaBirimi := JsonFiyatlar.Get('PS').JsonValue.Value;
JsonSonucu.Lines.Add('ArabaMarkasi : '+ArabaMarkasi);
JsonSonucu.Lines.Add('ArabaModeli : '+ArabaModeli);
JsonSonucu.Lines.Add('ArabaYili : '+ArabaYili);
JsonSonucu.Lines.Add('ArabaFiyati : '+ArabaFiyati.ToString+' '+ArabaParaBirimi);
JsonSonucu.Lines.Add('');
JsonSonucu.Lines.Add('');
except
On E:Exception Do
JsonSonucu.Lines.Add('Hata : '+E.Message);
end;
Application.ProcessMessages;
end;
finally
JSonArabalar.Free;
end;
end;
end.
İyi günler.