EncodeStream加密流文件的问题??? ( 积分: 100 )

  • 主题发起人 主题发起人 lizhen_1020
  • 开始时间 开始时间
L

lizhen_1020

Unregistered / Unconfirmed
GUEST, unregistred user!
function EncodeFile(const FileName: string): string;
var
InStream: TMemoryStream;
OutStream: TStringStream;
begin
Result := '';
InStream := TMemoryStream.Create;
try
InStream.LoadFromFile(FileName);
OutStream := TStringStream.Create('');
try
EncodeStream(InStream, OutStream);
Result := OutStream.DataString;
finally
OutStream.Free;
end;
finally
InStream.Free;
end;
end;
函数encodefile把图像文件加密成base64编码的字符串,
但是我解码的时候出现问题,代码如下
procedure TAboutForm.btnLoadStreamClick(Sender: TObject);
var
S1: TStringStream;
S2: TMemoryStream;
pp: TBitmap;
begin
pp := TBitmap.Create;

S1 := TStringStream.Create(EncodeFile('D:/sss.bmp'));
S2 := TMemoryStream.Create;

DecodeStream(S1, S2);

// S2.SaveToFile('D:/13.bmp');
pp.LoadFromStream(S2);
Image1.Picture.Assign(pp);
Image1.Repaint;

S1.Free;
S2.Free;
pp.Free;
end;
image1里得不到图片,但是用S2.SaveToFile('D:/13.bmp');却可以得到
这个图像!
 
function EncodeFile(const FileName: string): string;
var
InStream: TMemoryStream;
OutStream: TStringStream;
begin
Result := '';
InStream := TMemoryStream.Create;
try
InStream.LoadFromFile(FileName);
OutStream := TStringStream.Create('');
try
EncodeStream(InStream, OutStream);
Result := OutStream.DataString;
finally
OutStream.Free;
end;
finally
InStream.Free;
end;
end;
函数encodefile把图像文件加密成base64编码的字符串,
但是我解码的时候出现问题,代码如下
procedure TAboutForm.btnLoadStreamClick(Sender: TObject);
var
S1: TStringStream;
S2: TMemoryStream;
pp: TBitmap;
begin
pp := TBitmap.Create;

S1 := TStringStream.Create(EncodeFile('D:/sss.bmp'));
S2 := TMemoryStream.Create;

DecodeStream(S1, S2);

// S2.SaveToFile('D:/13.bmp');
pp.LoadFromStream(S2);
Image1.Picture.Assign(pp);
Image1.Repaint;

S1.Free;
S2.Free;
pp.Free;
end;
image1里得不到图片,但是用S2.SaveToFile('D:/13.bmp');却可以得到
这个图像!
 
S2.Position := 0;////////////////
pp.LoadFromStream(S2);
 
thank you !
太及时了!
 
后退
顶部