Lazarus 自带的编码解码函数MD5、Base64、SHA256、URL等

Pascal/Delphi wes 1 month ago (2026-03-14) 114 views
Lazarus 自带了不少常用的编码解码函数、无需任何第三方库编码 / 解码 / 哈希函数,不用装任何组件,直接 uses 单元就能用,包含你要的 MD5、Base64、SHA、URL 编码 等。

🔥 终极清单:Lazarus 自带编码 / 解码 / 哈希函数

全部是 Free Pascal RTL + FCL 自带,跨平台(Windows / Linux /macOS)通用。

一、Base64 编码 / 解码(最常用)

单元: uses Base64;
函数:

function EncodeStringBase64(const s: string): string;

function DecodeStringBase64(const s: string): string;

示例:

s := EncodeStringBase64(‘123456’); 

s := DecodeStringBase64(‘MTIzNDU2’);


二、MD5 哈希(32 位大写 / 小写)

单元: uses md5;
函数:





function MD5Print(const AData: TMD5Digest): string; 

function MD5String(const AStr: string): TMD5Digest; 

function MD5Str(const s: string): string;





示例:
s := MD5Str(‘123456’);

三、SHA1 / SHA256 / SHA512 (超强加密)

单元:
  • SHA1:sha1
  • SHA256:sha256
  • SHA512:sha512
uses sha1, sha256, sha512;
函数:
SHA1String(s) → 哈希
SHA256String(s) → 哈希 SHA512String(s) → 哈希

四、URL 编码 / 解码(Http 必备)

单元:uses HTTPDefs;
函数:
URLEncode(s)  

五、HTML 编码 / 解码

单元: strutils
uses strutils;
StringToHTML(s) HTMLToString(s)

六、UTF8 <-> Ansi/Unicode 编码转换

单元: uses LazUTF8;
UTF8ToAnsi(s) AnsiToUTF8(s) UTF8Length(s)

七、二进制 <-> 十六进制(Hex)

单元: uses SysUtils;
BinToHex(@buffer, hexStr, length);

八、格式化编码(HEX、Base64、MD5 输出)

单元: SysUtils
Format(‘%x’, [value])

🎯 最常用的 7 个函数

最实用、最常用的 7 个,全部 Lazarus 自带:
  1. Base64 编码 EncodeStringBase64
  2. Base64 解码 DecodeStringBase64
  3. MD5 MD5Str
  4. SHA256 SHA256String
  5. URL 编码 URLEncode
  6. URL 解码 URLDecode
  7. UTF8 转码 UTF8ToAnsi / AnsiToUTF8