delphi to java,JAVA转换成DELPHI

在线等JAVA转换成DELPHI

String md5key = new String(key.getKeyContent(), charset);

return new String(Base64.encodeBase64(DigestUtils.md5((content + md5key).getBytes(charset))), charset);

------解决方案--------------------

这不就是将一个字符MD5加密后,然后在BASE64编码吗,找个DELPHI版本的MD5算法,然后用DELPHI只带的控件进行BASE64编码不就行了

------解决方案--------------------

不知道java函数的charset是干什么的?

------解决方案--------------------

引用:String md5key = new String(key.getKeyContent(), charset);

return new String(Base64.encodeBase64(DigestUtils.md5((content + md5key).getBytes(charset))), charset);

……

uses IdHashMessageDigest, IdGlobal, EBase64;

procedure TForm13.btn1Click(Sender: TObject);

function ToUTF8Encode(str: string): string; //将字符串转UTF8编码

var

b: Byte;

begin

for b in BytesOf(UTF8Encode(str)) do

Result := Format('%s%%%.2x', [Result, b]);

end;

function Encode(const KeyContent, content : string) : string;//加密(密钥, 待加密串)

var

md5key : string;

MyMD5: TIdHashMessageDigest5;

begin

md5key := ToUTF8Encode(KeyContent);

MyMD5 := TIdHashMessageDigest5.Create;

try

Result := ToUTF8Encode(Base64EncodeString(MyMD5.HashStringAsHex(content + md5key, enUTF8)));

finally

MyMD5.free;

end;

end;

const

Key = 'abc';

var

Code : string;

begin

Code := Encode(Key, '123abc');

ShowMessage(Code);

end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值