Einzelnen Beitrag anzeigen

backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
298 Beiträge
 
Delphi 10.4 Sydney
 
#1

Json Serializer und GUID

  Alt 18. Jun 2021, 08:49
Hallo zusammen,

ich nutze mittlerweile den Delphi Json Serialzter in vielen Projekten.
Jetzt bin ich das erste mal an eine GUID geraten, und da funktioniert er scheinbar nicht.

Konvertiere ich ein GUID nach JSon und wieder zurück ist der hintere Teil abgeschnitten.
Mache ich was falsch, oder ist das ein Bug?

Code:
  var lText := TStringList.Create;
  try
    var lGuid := TGUID.NewGuid;
    lText.Add(lGuid.ToString);

    var lJson: string;
    var lSerializer := TJsonSerializer.Create;
    try
      lJson := lSerializer.Serialize(lGuid);
    finally
      FreeAndNil(lSerializer);
    end;

    lText.Add(lJson);

    var lNewGuid: TGUID;
    var lDeserializer := TJsonSerializer.Create;
    try
      lNewGuid := lDeserializer.Deserialize<TGUID>(lJson);
    finally
      FreeAndNil(lSerializer);
    end;

    lText.Add(lNewGuid.ToString);

    ShowMessage(lText.Text);
  finally
    FreeAndNil(lText);
  end;
Ergebnis:
Code:
{1BBCB1AA-1BF2-42F7-96E2-2A84ED6699BA}
{"D1":465351082,"D2":7154,"D3":17143}
{1BBCB1AA-1BF2-42F7-0000-000000000000}
Es scheint die Variable D4 zu fehlen von TGUID (array[0..7] of byte).
Weiss jemand ob man dem Parser das manuell beibringen kann?

Grüße
Oliver
Oliver
  Mit Zitat antworten Zitat