Einzelnen Beitrag anzeigen

Benutzerbild von t2000
t2000

Registriert seit: 15. Dez 2005
Ort: NRW
212 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Replace JSON Escape Steuerzeichen

  Alt 19. Mär 2020, 10:57
Vielleicht habe ich aber auch ein Fehler gemacht.

Wenn ich den Umweg über einen String gehe, kann ich mir die eigene Routine sparen.
Das erste Beispiel erzeugt eine Exception, aber das zweite Beispiel funktioniert.
Aber einen direkten weg das Object zu erzeugen habe ich nicht gefunden.

Delphi-Quellcode:
// Übergabe an diese Funktion AParam bzw. LParam : TJSONObject;
var
  FJSONData : TJSONObject;
  FJSONDataString : String;
begin
  // ****** Exception
  FJSONData := LParam.GetValue<TJSONObject>( sngTypeJSONName_Parameter_JSONData); // Das verursacht eine Exception weil ein "-Zeichen mit einem Steuerzeichen versehen ist: Exception bei \"
  // *******

  FJSONDataString := LParam.GetValue<string>( sngTypeJSONName_Parameter_JSONData); // Das funktioniert und die Backslashs sind weg
  //FJSONDataString := ReplaceJSONEscape(FJSONDataString); // Dies ist also nicht notwendig
  FJSONData := TJSONObject.ParseJSONValue( FJSONDataString) as TJSONObject; // und hier erzeuge ich mein TJSONObject
Thomas
(Wir suchen eine(n) Entwickler(in) mit Ambitionen später ggf. die Softwarefirma zu leiten)
Aktuell nicht mehr. Aber ab vielleicht 2024/2025 wird das wieder sehr interessant!
  Mit Zitat antworten Zitat