Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.292 Beiträge
 
Delphi 12 Athens
 
#8

AW: ObjectList serialisieren JSON

  Alt 10. Nov 2021, 12:32
Moin...

ich hätte noch eine Variante für komplexe Objekte mit Listen <Txxx>:

Delphi-Quellcode:
class function TToolsJson.JsonFromObject(aValue: TObject): string;
var
  MarshalObj: TJSONMarshal;
  JSONObject: TJSONObject;
begin
  Result := '';
  MarshalObj := TJSONMarshal.Create;
  try
    JSONObject := MarshalObj.Marshal(aValue) as TJSONObject;
    try
      if Assigned(JSONObject) then
        Result := JSONObject.ToString;
    finally
      JSONObject.Free;
    end;
  finally
    MarshalObj.Free;
  end;
end;

class function TToolsJson.ObjectFromJson(aJson: string): TObject;
var
  UnMarshalObj: TJSONUnMarshal;
  JSONObject: TJSONObject;
begin
  Result := nil;
  UnMarshalObj := TJSONUnMarshal.Create;
  try
    // Todo: Json String welcher mit JsomFromObject erstellt wurde, wird nicht in JsonObject zurückgewandelt
    JSONObject := TJSONObject.ParseJSONValue(aJson) as TJSONObject;
    try
      if Assigned(JSONObject) then
        Result := UnMarshalObj.Unmarshal(JSONObject);
    finally
      JSONObject.Free;
    end;
  finally
    UnMarshalObj.Free;
  end;
end;
  Mit Zitat antworten Zitat