找回密码
 加入
搜索
查看: 1949|回复: 1

[AU3基础] 随机字符串问题,需转换成16进制且要40位

[复制链接]
发表于 2016-7-25 22:36:19 | 显示全部楼层 |阅读模式
需求描述:

我要随机生成一个8到16位的字符串(包括0-9,a-z,A-Z)然后对应转换成16进制,转换的16进制如果不足40位,需要用20补足。

例子如下:

随机字符串:ABCDEFGa0   (这是9位)
转换成16进制:414243444546476130 (因为这里只有18位,所以后面12位要用20补齐)
最终结果:4142434445464761302020202020202020202020

挺有挑战性的题目,我是做随机序列号用,拜谢大家!
发表于 2016-7-26 10:24:16 | 显示全部楼层
本帖最后由 tubaba 于 2016-7-26 10:46 编辑

你自己不是都写出来了吗...
$seed = Random(8,16,1)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $seed = ' & $seed & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
$str=''
For $i=1 To $seed
        Local $test[3] =[Random(48,57,1),Random(65,90,1),Random(97,122,1)]
        $str &=Chr($test[Random(0,2,1)])
Next
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $str = ' & $str & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console

For $i = StringLen($str) To 20
        $str &=Chr(32)
Next
$str = StringTrimLeft(StringToBinary($str),2)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $str = ' & $str & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-22 05:22 , Processed in 0.074079 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表