uses    superobject;

procedure TForm1.FormCreate(Sender: TObject);
var aJson: ISuperObject;
aSuperArray: TSuperArray;
   i:Integer;
begin
  {1、赋初值}  aJson:=SO('{"zoo":"涂磊动物园","animals":[{"name":"猴子","year":"12"},{"name":"老虎","year":"132"}]}');
  {2、读值前,一定要先判断是否存在}  if   aJson['animals']<> nil  then
       showmessage(  aJson['animals'].AsString );

  {3、多值的读取} aSuperArray:= aJson['animals'].AsArray;
//多值 "animals":[{"name":"猴子","year":"12"},
 //               {"name":"老虎","year":"132"}]
   for i:=0 to  aSuperArray.Length-1 do
 memo1.Lines.Add(aSuperArray[i]['name'].AsString+aSuperArray[i]['year'].AsString);

   aJson:=SO('{"code":0,"data":{"area":"华东","area_id":"300000","city":"宜春市","city_id":"360900","country":"中国","country_id":"CN","county":"","county_id":"","ip":"59.62.201.110","isp":"电信","isp_id":"100017","region":"江西省","region_id":"360000"}}');
  {4、深层级的访问}  if   aJson['data.country']<> nil  then
   showmessage(  aJson['data.country'].AsString );    // 中国
end;

SuperObject.pas和JSON查看软件下载