5.3 KiB
信息摘要及编码
内容
- 信息摘要函数
- BASE64编码
- URI EnCode函数
- 进制编码函数
信息摘要函数
信息摘要函数主要提供CRC32,MD5,SHA这三类信息摘要算法的实现,信息摘要算法广泛地应用于数字签名应用中。
内容
- 摘要函数使用说明
- GetMsgDigest
- GetMsgDigest(文件)
摘要函数使用说明
filename := "d:\\test.txt";
teststr := "hello";
alias := ""; //别名
return array(
"filename":filename,
"GetMsgDigest(crc32_str)":GetMsgDigest(teststr,0),
"GetMsgDigest(md5_str)":GetMsgDigest(teststr,1),
"GetMsgDigest(sha1_str)":GetMsgDigest(teststr,2),
"GetMsgDigest(sha224_str)":GetMsgDigest(teststr,3),
"GetMsgDigest(sha256_str)":GetMsgDigest(teststr,4),
"GetMsgDigest(sha384_str)":GetMsgDigest(teststr,5),
"GetMsgDigest(sha512_str)":GetMsgDigest(teststr,6),
"GetMsgDigest(alias, filename, crc32_str)":GetMsgDigest(alias,filename,0),
"GetMsgDigest(alias, filename, md5_str)":GetMsgDigest(alias,filename,1),
"GetMsgDigest(alias, filename, sha1_str)":GetMsgDigest(alias,filename,2),
"GetMsgDigest(alias, filename, sha224_str)":GetMsgDigest(alias,filename,3),
"GetMsgDigest(alias, filename, sha256_str)":GetMsgDigest(alias,filename,4),
"GetMsgDigest(alias, filename, sha384_str)":GetMsgDigest(alias,filename,5),
"GetMsgDigest(alias, filename, sha512_str)":GetMsgDigest(alias,filename,6)
);
GetMsgDigest
用途:信息摘要函数相关函数。 参数:arg1(按示例顺序传入)。 返回:处理后的结果值。
- 摘要函数使用说明
- GetMsgDigest
- GetMsgDigest(文件)
GetMsgDigest(文件)
BASE64编码
字符串与BASE64编码的互转函数
内容
- BASE64编码函数使用说明
- StrToBase64
- Base64ToStr
BASE64编码函数使用说明
//常量定义
test_str := 'hello world';
//BASE64
base64 := StrToBase64(test_str); //转换为BASE64编码
orig_str := Base64ToStr(base64); //BASE64编码转换为字符串
StrToBase64
用途:将字符串转换为对应类型。 参数:arg1(按示例顺序传入)。 返回:转换后的数值或日期。
范例
return rdo2 StrToBase64('a12'); // 返回字符串:YTEy
Base64ToStr
用途:将输入值转换为字符串。 参数:arg1(按示例顺序传入)。 返回:字符串。
范例
return rdo2 Base64ToStr('YTEy'); // 返回字符串:a12
URI EnCode函数
与JavaScript同名函数功能完全相同。
内容
- EncodeURIComponent
- DecodeURIComponent
- EncodeURI
- DecodeURI
EncodeURIComponent
DecodeURIComponent
EncodeURI
DecodeURI
进制编码函数
内容
- 进制编码函数使用说明
- EncodeRadixstr
- DecodeRadixstr
- Decoderadixwstr
- Encoderadixwstr
进制编码函数使用说明
encoderadixstr("123","0x",16)结果为"0x310x320x33" 前缀
encoderadixstr("123","h",0x80000000+16)结果为"31h32h33h" 后缀
decoderadixstr("0x310x320x33",2,16)的结果为123
encoderadixstr("123","h",0x80000000+16)结果为"31h32h33h"
decoderadixstr("31h32h33h",1,0x80000000+16)结果为"123"
encoderadixstr("天软","0x",16)结果为"0xCC0xEC0xC80xED" 默认大写
encoderadixstr("天软","0x",0x40000000+16)结果为"0xcc0xec0xc80xed" 小写字母
EncodeRadixstr
用途:进制编码函数相关函数。 参数:arg1,arg2,arg3(按示例顺序传入)。 返回:处理后的结果值。
范例
return EncodeRadixstr("1122", "0x", 16); // 结果为’ 0x310x310x320x32’,前缀,16进制
return EncodeRadixstr("1122", "h", 0x80000000 + 16); // ’ 31h31h32h32h’,后缀,16进制
return EncodeRadixstr("天软", "ox", 0x80000000 + 16);
// ’ CCoxECoxC8oxEDox’,后缀,默认为大写字母,16进制
return EncodeRadixstr("天软", "0X", 0x80000000 + 0x40000000 + 16);
// ’ cc0Xec0Xc80Xed0X’,后缀,小写字母,16进制
return EncodeRadixstr("18", "B", 2); // ’ B00110001B00111000’,二进制
DecodeRadixstr
用途:进制编码函数相关函数。 参数:arg1,arg2,arg3(按示例顺序传入)。 返回:处理后的结果值。
范例
return DecodeRadixstr('0x310x310x320x32', 2, 16); // 返回'1122'
// 注:这里的第二个参数是前缀或后缀的串的长度,并非指定串
Decoderadixwstr
用途:进制编码函数相关函数。 参数:arg1,arg2,arg3(按示例顺序传入)。 返回:处理后的结果值。
范例
return Decoderadixwstr('0x00310x00310x00320x0032', 2, 16); // 返回'1122'
// 注:这里的第二个参数是前缀或后缀的串的长度,并非指定串
Encoderadixwstr
用途:进制编码函数相关函数。 参数:arg1,arg2,arg3(按示例顺序传入)。 返回:处理后的结果值。
范例
return Encoderadixwstr("1122", "0x", 16);
// 结果为'0x00310x00310x00320x0032',前缀,16进制
return Encoderadixwstr("1122", "h", 0x80000000 + 16);
// '0031h0031h0032h0032h',后缀,16进制
return Encoderadixwstr("天软", "ox", 0x80000000 + 16); // ''
// '5929ox8F6Fox',后缀,默认为大写字母,16进制
return Encoderadixwstr("天软", "0X", 0x80000000 + 0x40000000 + 16);
// '59290X8f6f0X',后缀,小写字母,16进制
return Encoderadixwstr("18", "B", 2);
// 'B0000000000110001B0000000000111000',二进制