Einzelnen Beitrag anzeigen

freejay

Registriert seit: 26. Mai 2004
Ort: Nürnberg
272 Beiträge
 
Delphi 11 Alexandria
 
#1

"Abstract error" mit TJSONIterator

  Alt 27. Okt 2023, 14:49
Hallo zusammen,

ich benutze TJsonIterator zusammen mit TJsonTextReader um Daten aus JSON-Dateien zu extrahieren.

Wenn ich dabei einen String übergebe, klappt das auch problemlos:

Delphi-Quellcode:
  FStringReader := TStringReader.Create('Irgend ein JSON Text');
  FJsonTextReader := TJsonTextReader.Create(FStringReader);
  FIterator := TJSONIterator.Create(FJsonTextReader);
  FIterator.Next;
Da ich aber mit sehr großen Dateien arbeiten muss, würde ich gerne die Dateien direkt lesen und nicht erst im Speicher in einen String packen. Also will ich das so machen:

Delphi-Quellcode:
  myStreamReader := TMyStreamReader.Create('IrgendeineDateiIn.JSON');
  FJsonTextReader := TJsonTextReader.Create(myStreamReader);
  FIterator := TJSONIterator.Create(FJsonTextReader);
  FIterator.Next;
TMyStreamReader ist dabei ein von TTextReader abgeleites Objekt, genau wie vorher TStringReader.

Jetzt aber bekomme ich in der Zeile

FIterator.Next einen "Abstract error".

Hat jemand eine Idee, was ich hier übersehe/falsch mache?

Danke & Gruß

Freejay
[Delphi 11.3.1 Enterprise; Win10/11; MySQL; VCL]
  Mit Zitat antworten Zitat