Delphi IdDecoderMIME 对图像编码base64解码成图像文件


本文整理自网络,侵删。

 
//编码
procedure TForm1.Button3Click(Sender: TObject);

var
  filepath:string ;
  filestream:TFileStream;

  EncoderMIME:TIdEncoderMIME;
  encode_result:String;
begin
   if OpenPictureDialog1.Execute then
   begin
   Memo1.Clear;
   EncoderMIME:=TIdEncoderMIME.Create(self);
   filestream:= TFileStream.Create(OpenPictureDialog1.FileName,fmOpenRead);
   encode_result:=EncoderMime.Encode(filestream);
   Memo1.Lines.BeginUpdate;
   Memo1.Lines.add(encode_result);
   Memo1.Lines.EndUpdate;
   filestream.Free;
   end;

end;

//解码
procedure TForm1.Button4Click(Sender: TObject);
var
 DecoderMIME:TIdDecoderMIME;
 filestream:TFileStream;
 strm:TMemoryStream;
 filepath:string;
 myjpeg: TJPEGImage;

begin

  myjpeg := TJPEGImage.Create;
  strm := TMemoryStream.Create;
  filepath:=ExtractFileDir(Application.ExeName);
  DecoderMIME:=TIdDecoderMIME.Create(nil);
  DecoderMIME.DecodeStream(trim(Memo1.text),strm);
  strm.Position:=0;
  if strm.size>1 then
   begin
   //ShowMessage('字符长度:'+IntToStr(strm.size));
  // myjpeg.LoadFromStream(strm);
  Image1.Picture.Assign(myjpeg);

  end;
  strm.Free;

end;

相关阅读 >>

Delphi int64 与 currency

Delphi vcl tmemo加速字符串读取

Delphi strtofloat 将“字符型”转换成“浮点型”

Delphi 2009 之 tstringbuilder 类[5]: chars[] 属性与 copyto 方法

Delphi 安卓读写ini文件

Delphi 复制动态数组

Delphi android 中 toast 的实现(老外写的unit)

Delphi xe mysql数据库操作类 mysqlhelper

Delphi vcl gif 动画

Delphi 关于 class helper for ... 语法

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    正在狠努力加载,请稍候...