Delphi RIO – TJSONArrayEnumerator nicht mehr definiert
TJSONArrayEnumerator ist nicht mehr in Delphi RIO definiert. In Delphi Tokyo war es keine Problem. Die Kontext-Hilfe für TJSONArrayEnumerator läßt sich in Rio aufrufen, aber was dort steht ist falsch. Erst die Suche im Quellcode „System.JSON“ gab Aufschluß.
Statt TJSONArrayEnumerator ist in Rio TJSONArray.TEnumerator defniert. Mit einer bedingten Kompilierung kann man mit beiden Delphi Versionen wieder kompilieren.
{$IFDEF VER330} // Rio
AJSONArrayIterator : TJSONArray.TEnumerator ;
{$ENDIF}
{$IFDEF VER320} // Tokyo
AJSONArrayIterator : TJSONArrayEnumerator ;
{$ENDIF}
......
{$IFDEF VER330} // Rio
AJSONArrayIterator := TJSONArray.TEnumerator.Create(AJSONValue as TJSONArray) ;
{$ENDIF}
{$IFDEF VER320} // Tokyo
AJSONArrayIterator := TJSONArrayEnumerator.Create(AJSONValue as TJSONArray) ;
{$ENDIF}
while AJSONArrayIterator.MoveNext do begin
Das war’s…