小编Ric*_*oal的帖子

如何将JSON字符串转换为图像?

我有一个应用程序将图像转换为JSON数组,我将其保存到blob字段:

function getImage(): String;
var
  memorystream : TMemoryStream;
  jsonArray    : TJSONArray;

begin
  memorystream := TMemoryStream.Create;
  myImage.Picture.Graphic.SaveToStream(memorystream);
  memorystream.Position := 0;

  jsonArray := TJSONArray.Create;
  jsonArray := TDBXJSONTools.StreamToJSON(memorystream, 0, memorystream.Size);

  memorystream.Free;

  Result := jsonArray.ToString;
end;
Run Code Online (Sandbox Code Playgroud)

转换PNG图像的结果如下所示:

[137,80,78,71,13,10,26,10,0,0, ... ]
Run Code Online (Sandbox Code Playgroud)

此结果存储在blob字段中,我使用此代码返回:

stream := TStream.Create;
stream := cdsPesquisa.CreateBlobStream(fieldAux, bmRead);
stream.Position := 0;

jsonArray := TJSONArray.Create;
jsonArray := TDBXJSONTools.StreamToJSON(stream, 0, stream.Size);
Run Code Online (Sandbox Code Playgroud)

在这里,我[137,80,78,71,13,10,26,10,0,0, ... ]在开头有相同的JSON字符串,但我需要再次将此JSON数组转换为图像.

我怎样才能做到这一点?

delphi json datasnap delphi-xe2

2
推荐指数
1
解决办法
6944
查看次数

标签 统计

datasnap ×1

delphi ×1

delphi-xe2 ×1

json ×1