Golang随机值生成算法-创新互联
package main
import (
"crypto/rand"
"fmt"
)
var strstr = []byte("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
func GetUID() string {
data := make([]byte, 16)
_, err := rand.Read(data)
if err != nil {
panic(err)
}
uuid := fmt.Sprintf("%X-%X-%X-%X-%X", data[0:4], data[4:6], data[6:8], data[8:10], data[10:])
return uuid
}
func GetString(size int) string {
data := make([]byte, size)
out := make([]byte, size)
buffer := len(strstr)
_, err := rand.Read(data)
if err != nil {
panic(err)
}
for id, key := range data {
x := byte(int(key) % buffer)
out[id] = strstr[x]
}
return string(out)
}
func main(){
fmt.Println(GetUID())
fmt.Println(GetString(8))
}
创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。
凤城ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!本文标题:Golang随机值生成算法-创新互联
当前链接:http://myzitong.com/article/dohgoe.html