Mime / Base 64 编码

Posted

技术标签:

【中文标题】Mime / Base 64 编码【英文标题】:Mime / Base 64 encoding 【发布时间】:2011-04-03 14:33:46 【问题描述】:

我需要一种在 Delphi 7 和 php 中将字符串编码为 Mime/Base64 的方法

这两个编码器必须兼容:)

【问题讨论】:

谁来编码,谁来解码? 【参考方案1】:

单元 EncdDecd 从 Delphi 6 开始就被包含在内;下面是它包含的 Mime 兼容的 base64 函数。

这个cached post from FlexVN(original post 并不总是在线)解释了如何使用 EncdDecd 单元在 PHP 和 Delphi 之间进行 base64 处理。

unit EncdDecd;

interface

uses Classes, SysUtils;

procedure EncodeStream(Input, Output: TStream);
procedure DecodeStream(Input, Output: TStream);
function  EncodeString(const Input: string): string;
function  DecodeString(const Input: string): string;

function  DecodeBase64(const Input: AnsiString): TBytes;
function  EncodeBase64(const Input: Pointer; Size: Integer): AnsiString;

【讨论】:

【参考方案2】:

Indy-Project 提供 base64 编码器/解码器类。您可以找到文档here。

对于 PHP,您可以使用 PHP 内部函数 base64_encodebase64_decode

【讨论】:

以上是关于Mime / Base 64 编码的主要内容,如果未能解决你的问题,请参考以下文章

从 mime 字节验证 base64 编码图像

从 Base64 编码的字符串中检索 MIME 类型

base64的MIME

Perl/MIME 编码文本问题

像图像或 PDF 文件这样的 MIME 类型不需要 base64 或以其他方式编码吗?

Base-64编码介绍