Base64编码Delphi

时间:2014-05-29 13:29:42

标签: php delphi encoding base64

我正在制作一个Delphi应用程序,我正在尝试使用base64编码流进行编码,我创建了两个函数:

function EncodedInputParams(input: TStringStream): string;
var
  output: TStringStream;
  encoder: TIdEncoderMIME;
begin
  input.Encoding.UTF8;
  input.Position := 0;
  output := TStringStream.Create;

  try
    encoder := TIdEncoderMIME.Create(nil);
    encoder.Encode(input, output);
    output.Seek(0, soFromBeginning);
    Result := output.DataString;
  finally
    output.Free;
  end;
end;

function SecondEncoding(input: TStringStream): string;
var
  output: TStringStream;
  midRes: string;
begin
  input.Encoding.UTF8;
  input.Position := 0;
  output := TStringStream.Create;

  try
    EncodeStream(input, output);
    output.Seek(0, soFromBeginning);
    midRes := output.DataString;
    midRes := StringReplace(midRes, #13#10, EmptyStr, [rfReplaceAll]);
    result := midRes;
  finally
    output.Free;
  end;
end;

函数工作正常,但问题是这些解决方案返回的字符串不同于PHP编码的字符串:http://www.tools4noobs.com/online_php_functions/base64_encode/。 任何想法如何重写一个函数来返回字符串,就像用PHP编写的那样。

0 个答案:

没有答案