Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Anzahl Einträge in JsonArray

  Alt 19. Sep 2024, 23:00
Nicht nur "vielleicht"!

Aber das wird wohl nicht der Fehler sein, denn dort kommt ein Index-Fehler (OutOfRange, bzw. genauer eine EArgumentOutOfRangeException).
Viel eher würde ich auf das Get vom TJsonObject tippen,
denn das liefert NIL, wenn es kein SubObjekt mit diesem Namen (id oder name) gibt,
und demnach muß es im JSONValue knallen, weil DU die Rückgabe vorher nicht prüfst.

Und ich vermute mal stark, da sollte ein BEGIN END; hinterm if (JSONValue is TJSONArray) then vorkommen?

Alles Dinge, die man beim Debuggen leicht bemerken könnte.




Ach ja, ParseJSONValue ist eine Class-Function,
welche man normaler Weise als TJSONValue.ParseJSONValue(...) aufruft.
Zitat:
Delphi-Quellcode:
JsonObject := TJsonObject.Create;
JsonValue := JsonObject.ParseJSONValue(st);
JsonValue := TJSONValue.ParseJSONValue(st);
Also das JsonObject ist unnötig. (auch wenn es zum Glück kein "Fehler" ist)

Und ich hoffe du gibst am Ende auch alles wieder brav frei. (Free)

Da es aber grad zufällig so wunderschön bei dir knallt ... Wäre super, wenn man mehr Ressorcen-Schutzblöcke (try finally) sehen würde.


PS: Den Knopf mit dem Delphi-Helm hattest du nicht zufällig bemerkt?
[delphi] dein Code [/delphi]
$2B or not $2B

Geändert von himitsu (19. Sep 2024 um 23:17 Uhr)
  Mit Zitat antworten Zitat