频道分类

Delphi 将文件转换成Base64编码

作者:admin 来源: 日期:2019/9/28 21:02:28 人气: 标签:

 

{**************************************************************************
  名称:   BaseImage
  参数:   fn: TFilename
  返回值: string
  功能:   将文件转换成Base64编码,返回值为编码
 **************************************************************************}
function BaseImage(fn: string): string;
var
    m1: TMemoryStream;
    m2: TStringStream;
    str: string;
begin
    m1 := TMemoryStream.Create;
    m2 := TStringStream.Create('');
    m1.LoadFromFile(fn);
    EncdDecd.EncodeStream(m1, m2);                       // 将m1的内容Base64到m2中
    str := m2.DataString;
    str := StringReplace(str, #13, '', [rfReplaceAll]);  // 这里m2中数据会自动添加回车换行,所以需要将回车换行替换成空字符
    str := StringReplace(str, #10, '', [rfReplaceAll]);
    result := str;                                       // 返回值为Base64的Stream
    m1.Free;
    m2.Free;
end;