Ever wanted to take an Object into a format that is easily persisted and back? Well now you can. New in XE6 is the REST.JSON unit. This allows you access to TJSON a class with some very helpful class methods. Using TJSON you can convert an object to a JSON string and back with a little help from generics along the way.
The following code uses a class called TFoo that has a Foo and a Fee property (string and Integer) Using TJson you can then see how to covert the object to a string and back ready for storage, transport etc.
uses REST.JSON; // Also new System.JSON
procedure TForm1.Button1Click(Sender: TObject); var Foo: TFoo; begin Foo := TFoo.Create; try Foo.Foo := 'Hello World'; Foo.Fee := 42; Memo1.Lines.Text := TJson.ObjectToJsonString(Foo); finally Foo.Free; end; Foo := TJson.JsonToObject<TFoo>(Memo1.Lines.Text); try Foo.Fee := 100; Memo1.Lines.Add(TJson.ObjectToJsonString(Foo)); finally Foo.Free; end; end;
If you want to watch this being demo’ed this very show video shows it in action http://youtu.be/TSqWoFvjj5g