Einzelnen Beitrag anzeigen

Tony-S

Registriert seit: 20. Feb 2009
4 Beiträge
 
#1

JSON parsen mit mehreren Eigenschaften pro Object

  Alt 31. Jan 2011, 22:35
Hallo Delphi-Praxis,

ich nutze eine API um Bilder auf eine Webseite zu laden, diese API gibt mir einen JSON-String zurück, den ich nicht so richtig geparsed bekomme.
Sobald ein Objekt mehrere Eigenschaft hat kann ich diese nicht mehr Abfragen.

Im Netz findet man die Unit "uLkJSON" (sourceforge.net/projects/lkjson/), nach diesem Beispielprojekt (sample 3) hab ich einen Versuch gestartet:

Delphi-Quellcode:
uses

uLkJSON;

var
  JSON, s2: String;
  js,xs:TlkJSONobject;
  ws: TlkJSONstring;

JSON := '{"image":{"size":293229,"created_at":'+
        '"2011-01-29T15:47:43Z","api_client_id":4,"title":null,'+
        '"content_type":"image/png","updated_at":"2011-01-29T15:47:43Z",'+
        '"user_id":64,"height":256,"filename":"Test.PNG",'+
        '"public_view_url":"http://pickhost.eu/view/0004/2631/Test.PNG",'+
        '"description":null,"visibility":"private","public_url":'+
        '"http://pickhost.eu/images/0004/2631/Test.PNG","width":631}}';
        // Der JSON-String der API

        js := TlkJSON.ParseText(JSON) as TlkJSONobject;

        s2 := vartostr(js.Field['"public_url"'].Value);
        form1.Caption := s2;
Ich weiß nicht genau ob der Schlüssel public_url in Anführungszeichen gehört oder nicht, an der Speicher Exception ändert das aber auch nichts.

Die ist übrigens ein Cross-Post: http://www.delphi-forum.de/topic_JSO...ct_103859.html

Hoffentlich kann mir einer von euch erklären was ich falsch mache.

MfG Tony
  Mit Zitat antworten Zitat