Autor Téma: bezejmenny JSON  (Přečteno 876 krát)

Offline Andy

  • Mladík
  • **
  • Příspěvků: 53
  • Karma: 0
bezejmenny JSON
« kdy: 07-01-2016, 17:58:59 »
Zdravim,
mel bych takovou neskromnou dvojotazku.

Jak v Delphi vytvorim? a Jak v Delphi zpracuji? takovyto JSON

Kód: Delphi [Vybrat]
  1. {"Error":"false","ErrorMessage":"","Synchronized":["1","3","7"]}

Jelikoz mi to jaksi dovoluje pouzit jenom pary ...

Predem dik i za pripadne nakopnuti spravnym smerem :-)

Offline < z >

  • Administrátoři
  • Guru
  • *****
  • Příspěvků: 1127
  • Karma: 42
    • Verze Delphi: 7, 2010
Re:bezejmenny JSON
« Odpověď #1 kdy: 07-01-2016, 20:39:13 »
Kde přesně je ten problém?

http://delphi.cz/search.aspx?q=json

Offline Andy

  • Mladík
  • **
  • Příspěvků: 53
  • Karma: 0
Re:bezejmenny JSON
« Odpověď #2 kdy: 08-01-2016, 14:59:32 »
Uz nikde,
neuvedomil jsem se ze pridat muzu i pomoci TJSONArray.Add(String) a tim padem brat muzu pomoci TJSONArray.Items[Index].Value

Dekuji

tz

  • Host
Re:bezejmenny JSON
« Odpověď #3 kdy: 09-01-2016, 16:55:52 »
Kód: Delphi [Vybrat]
  1. // Vytvoření
  2. uses
  3.   System.JSON;
  4.  
  5. procedure CreateJson;
  6. var
  7.   JsonObject: TJSONObject;
  8.   JsonArray: TJSONArray;
  9. begin
  10.   JsonObject := TJSONObject.Create;
  11.   try
  12.     JsonObject.AddPair('Error', TJSONFalse.Create);
  13.  
  14.     JsonObject.AddPair('ErrorMessage', TJSONString.Create(''));
  15.  
  16.     JsonArray := TJSONArray.Create;
  17.     JsonArray.AddElement(TJSONString.Create('1'));
  18.     JsonArray.AddElement(TJSONString.Create('3'));
  19.     JsonArray.AddElement(TJSONString.Create('7'));
  20.     JsonObject.AddPair('Synchronized', JsonArray);
  21.  
  22.     ShowMessage(JsonObject.ToJSON);
  23.   finally
  24.     JsonObject.Free;
  25.   end;
  26. end;

Kód: Delphi [Vybrat]
  1. // Čtení
  2. uses
  3.   System.JSON;
  4.  
  5. procedure ReadJson(const AJson: string);
  6. var
  7.   JsonValue: TJSONValue;
  8.   JsonObject: TJSONObject;
  9.   Error: Boolean;
  10.   ErrorMessage: string;
  11.   JsonArray: TJSONArray;
  12.   I: Integer;
  13. begin
  14.   JsonValue := TJSONObject.ParseJSONValue(AJson);
  15.   try
  16.     JsonObject := JsonValue as TJSONObject;
  17.  
  18.     Error := JsonObject.GetValue<Boolean>('Error');
  19.     ErrorMessage := JsonObject.GetValue<string>('ErrorMessage');
  20.     JsonArray := JsonObject.GetValue<TJSONArray>('Synchronized');
  21.  
  22.     for I := 0 to JsonArray.Count - 1 do
  23.       … JsonArray.Items[I].GetValue<string>;
  24.   finally
  25.     JsonValue.Free;
  26.   end;
  27. end;