• Lazarus中Base64的操作


    在字符串处理中,我们经常需要对文件编码然后再进行传输,通常会使用base64编码,在FreePascal中默认集成了这个单元,我们来介绍如何使用:

    首先需要在引用单元的时候使用: use base64;

    1.解密加密函数

    这个函数直接对字符串进行解密、加密操作,非常简单:

    procedure TForm1.Button1Click(Sender:TObject);
    begin
      Memo1
    .Text:= EncodeStringBase64(Memo1.Text);
    end
    ;

    procedure TForm1
    .Button2Click(Sender:TObject);
    begin
      Memo1
    .Text:= DecodeStringBase64(Memo1.Text);
    end
    ;

    2.文件字节流操作

    这里直接贴出代码:

    var
      B64
    : TBase64EncodingStream;
      s
    :TFileStream;
      st
    :TSTringStream;
     
    TempStr:String;
      ccount
    : integer;
    begin
     
    if OpenDialog1.Execute then
        s
    :=TFileStream.Create(OpenDialog1.FileName,fmOpenRead)
     
    else
       
    Exit;
      st
    :=TSTringStream.Create('');
     
    try
        B64
    := TBase64EncodingStream.Create(st);
       
    try
          Memo1
    .Lines.Clear;
     
    //    B64.WriteBuffer(s, s.Size);
         
    SetLength(TempStr, s.Size);
          s
    .Read(tempStr[1], s.Size);
          ccount
    := s.Size;
          B64
    .Write(tempStr[1], ccount);
         
    ShowMessage(tempstr);
          Memo1
    .Lines.Add(st.DataString);
       
    finally
          B64
    .Free;
        end
    ;
     
    finally
        s
    .Free;
        st
    .Free;
      end
    ;    

    是不是非常简单。

  • 相关阅读:
    VMWare安装Win10虚拟机 昆明
    c#游戏进程杀手 昆明
    图解机器学习读书笔记CH2
    深度学习中的线性代数知识详解
    图解机器学习读书笔记CH1
    三分算法
    POJ 2356 Find a multiple【抽屉原理】
    POJ 1170 Shoping Offers(IOI 95)
    HDU 2438 Turn the corner【三分】
    HDU 3552 I can do it! 【贪心】
  • 原文地址:https://www.cnblogs.com/China3S/p/3290329.html
Copyright © 2020-2023  润新知