![]() |
kleine anleitung zur unit lkjson gesucht
moin zusammen,
ich befasse mich seit gut einer woche mit dem thema json. auf der offiziellen seite ![]() ![]() eigentlich kam ich relativ gut klar damit (dachte ich), nur wenn ich ein paar objekte hinzufüge und ein paar lösche kommen immer irgendwelche speicherverletzungen.
Delphi-Quellcode:
so hole ich mir erstmal das array um das es geht.
jStart := TlkJSON.ParseText(s) as TlkJSONobject;
jData := TlkJSONobject(jStart.GetField('data')); jPers := TlkJSONobject(jData.GetField('pers')); jAddr := TlkJSONlist(jMail.GetField('addr')); nur wenn ich dann diverse sachen in jAddr hinzufüge oder verändere kommen die fehler. leider habe ich keine doku zu der unit gefunden :( hat irgendeiner von euch ein kleines tutorial zur verfügung? mfg Jonny |
Re: kleine anleitung zur unit lkjson gesucht
Hi Jonny,
ein Tutorial kann ich Dir nicht geben aber es gibt noch eine andere Libary, bei der eine Doku dabei ist. ![]() Ich werde mir die Tage mal beide Libarys angucken. Mal gucken vielleicht kann ich dir dann zu deinem Problem weiterhelfen. greetz Lun |
Re: kleine anleitung zur unit lkjson gesucht
Hallo,
deine direkten type casts würde ich mal prüfen. Bist du sicher, dass jAddr := TlkJSONlist(jMail.GetField('addr')); eine "array" zurückliefert. Das kannst du mit is ja mal prüfen. Ich sehe in der Unit, dass GetField ein TlkJSONbase zurückgibt. Davon sind ja dann alle anderen Klassen abgeleitet. Ein
Delphi-Quellcode:
ist ja (zumindestens beim Debuggen) nicht verkehrt.
var
jBase: TlkJSONbase; begin jBase:= jMail.GetField('addr'); if jBase is TlkJSONlist then begin jAddr:= TlkJSONlist(jMail.GetField('addr')); end else begin Assert, oder was weiss ich end; ein
Delphi-Quellcode:
würde ich übrigens nicht nehmen, das Debuggen mit is finde ich einfacher
with jBase as TlkJSONlist
Heiko |
Re: kleine anleitung zur unit lkjson gesucht
servus,
erstmal danke für eure antworten. @lun: die unit hatte ich mir auch schon angeguckt, jedoch ist dort das problem wenn ich dort das json object wieder in einen string umwandeln will um dieses an den server zu schicken das format nicht stimmt. @hoika: ich bezweifle selber, dass die casts "sauber" sind, jedoch wird mir definitiv eine liste zurückgegeben. die unit ist ja nun in der version 1.01 verfügbar, es sind auch einige neue sinnvolle methoden hinzugekommen, nur treten bei der benutzung extrem viele leaks auf, was mit sicherheit zum einen durch meine falsche benutzung aber auch durch irgendwie nicht funktionierende destructoren auftritt. leider finde ich keine alternativen :( mfg Jonny |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz