Wenn du den Wert von "CurrentValue" über ein TJSONObject ausließt, dann erhältst du schon das was du haben willst (allerdings mit Zeilenumbrüchen, wobei die ja eigentlich nicht schlimm sind.. aber notfalls kannst du die ja entfernen):
Delphi-Quellcode:
uses
System.JSON;
const
EXAMPLE_JSON = '{' + sLineBreak +
' "CurrentValue": "{\n \"value\": null,\n \"valueType\": \"String\"\n}"' + sLineBreak +
'}';
procedure TForm3.FormCreate(Sender: TObject);
var json: TJSONObject;
val: String;
begin
json := TJSONObject.ParseJSONValue(EXAMPLE_JSON) as TJSONObject;
try
val := json.GetValue<String>('CurrentValue');
ShowMessage(val);
finally
json.Free;
end;
end;
Zitat:
[Window Title]
Project1
[Content]
{
"value": null,
"valueType": "String"
}
[OK]
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."