package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
str := RandString(16)
fmt.Printf("随机字符串: %#v \n", str)
}
func RandString(lenNum int) string {
var chars = []string{"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0"}
var str strings.Builder
length := len(chars)
rand.Seed(time.Now().UnixNano())//重新播种,否则值不会变
for i := 0; i < lenNum; i++ {
str.WriteString(chars[rand.Intn(length)])
}
return str.String()
}
编译文件:
go build -o rand2 rand.go
运行结果:
错误示例:
我为人人,人人为我,美美与共,天下大同