Delphi JSON處理技術已經越來越成熟,可以輕松地完成JSON數據的解析、生成和操作。下面介紹幾個關于Delphi JSON的知識點。
1. JSON字符串生成
var JsonStr: string; JsonValue: TJSONObject; begin JsonValue := TJSONObject.Create; try JsonValue.AddPair('name', 'Tom'); JsonValue.AddPair('age', TJSONNumber.Create(20)); JsonStr := JsonValue.ToString; finally JsonValue.Free; end; end;
2. JSON字符串解析
var JsonStr: string; JsonValue: TJSONValue; JsonObj: TJSONObject; Name: string; Age: Integer; begin JsonStr := '{"name":"Tom","age":20}'; JsonValue := TJSONObject.ParseJSONValue(JsonStr); try JsonObj := JsonValue as TJSONObject; Name := JsonObj.GetValue('name').Value; Age := JsonObj.GetValue('age').AsInt; finally JsonValue.Free; end; end;
3. JSON數組
var JsonArr: TJSONArray; JsonValue: TJSONValue; begin JsonArr := TJSONArray.Create; try JsonArr.Add(TJSONString.Create('red')); JsonArr.Add(TJSONString.Create('green')); JsonArr.Add(TJSONString.Create('blue')); for JsonValue in JsonArr do ShowMessage(JsonValue.Value); finally JsonArr.Free; end; end;
4. JSON序列化與反序列化
使用Delphi自帶的魔法方法可以輕松地完成對象序列化和反序列化,例如:
type TPerson = class(TObject) private FID: Integer; FName: string; published property ID: Integer read FID write FID; property Name: string read FName write FName; end; var Person: TPerson; JsonStr: string; begin Person := TPerson.Create; try Person.ID := 1; Person.Name := 'Tom'; JsonStr := TJson.ObjectToJsonString(Person); ShowMessage(JsonStr); Person := TJson.JsonToObject(JsonStr); finally Person.Free; end; end;
以上就是一些關于Delphi JSON處理技術的介紹,以幫助Delphi開發者更好地應用JSON技術。