MX4*_*399 6 delphi encoding character-encoding
哪个是检测字符串是否为Base64Encoded的最佳方法(使用Delphi)?
你能做的最好就是尝试解码它.如果解码失败,则输入不是base64编码的.字符串成功解码,然后输入可能是base64编码.
您可以检查字符串是否仅包含Base64 valids字符
function StringIsBase64(const InputString : String ) : Boolean;
const
Base64Chars: Set of AnsiChar = ['A'..'Z','a'..'z','0'..'9','+','/','='];
var
i : integer;
begin
Result:=True;
for i:=1 to Length(InputString) do
{$IFDEF UNICODE}
if not CharInSet(InputString[i],Base64Chars) then
{$ELSE}
if not (InputString[i] in Base64Chars) then
{$ENDIF}
begin
Result:=False;
break;
end;
end;
Run Code Online (Sandbox Code Playgroud)
该=字符用于填充,所以你可以添加一个aditional的valiation用于填充的base64字符串检查的功能,如果该字符串的长度为4 MOD
| 归档时间: |
|
| 查看次数: |
1629 次 |
| 最近记录: |