QJSON更新-增加AsBytes属性及几个辅助函数

【更新内容】

1、 加入AsBytes属性,以支持二进制数据类型,默认实现直接使用的十六进制字符串表达,上层可以重载OnQJsonEncodeBytes和OnQJsonDecodeBytes事件来替换为自己的实现(如ZLib+Base64)

var
   ABytes:TBytes;
   AJson:TQJson;
...

AJson.Add('Bytes').AsBytes:=ABytes;
...
ABytes:=AJson.ItemByName('Bytes').AsBytes;

2、 加入ValueFromStream/ValueFromFile/StreamFromValue/StreamFromFile函数,简单示例如下:

var
  AJson: TQJson;
begin
AJson := TQJson.Create;
try
  AJson.Add('File').ValueFromFile('c:\picture\D2007vslkJson.jpg');
  AJson.ItemByName('File').FileFromValue('c:\picture\copy.jpg');
  mmResult.Text:=AJson.AsJson;
finally
  FreeAndNil(AJson);
end;
end;

【更新级别】

可选

 

分享到: