Delphi对TStrings进行排序

前言

实现方式

其实使用这个实现也非常的简单,虽然在TStrings里面没有Sort的排序,但是在TStringList里面有这个排序的,所以我们只要再建一个TStringList的变量,把值赋过去后再排序,然后再用Md5进行签名即可实现了。

实现代码

function GetSign(Params: TStrings): string;

var

tmpParams: TStringList;

str: string;

i: Integer;

begin

try

//创建TStringList

tmpParams := TStringList.Create;

//将TStrings的数据全部存进TStringList

tmpParams.AddStrings(Params);

//给TStringList进行ascii码的排序

tmpParams.Sorted := True;

//根据排序我们拼接成要实现的字符串

str := '';

for i := 0 to tmpParams.Count - 1 do

str := str + tmpParams.Strings[i] + '&';

//加上最后的key后反回,再加这个生成的字符串进行md5的签名即可

str := str + 'key=' + ZfPayCfg.appsecret;

Result := str;

finally

tmpParams.Free;

end;

end;

上面的方法就是实现排序后的Tstrings生成的字符串,然后把这个生成的字符串进行MD5的加密,delphi里面MD5的加密网上很好找,我在这就不再写了

-END-

长按下方二维码关注

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180525G0EDKN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券