alist/utils/random.go

26 lines
409 B
Go
Raw Normal View History

2022-02-03 04:27:50 +00:00
package utils
import (
"math/rand"
"strings"
2022-02-04 08:08:15 +00:00
"time"
2022-02-03 04:27:50 +00:00
)
2022-02-04 08:08:15 +00:00
var Rand *rand.Rand
func init() {
s := rand.NewSource(time.Now().UnixNano())
Rand = rand.New(s)
}
2022-02-03 04:27:50 +00:00
func RandomStr(n int) string {
2022-02-04 08:08:15 +00:00
2022-02-03 04:27:50 +00:00
builder := strings.Builder{}
t := "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
for i := 0; i < n; i++ {
2022-02-04 08:08:15 +00:00
r := Rand.Intn(len(t))
2022-02-03 04:27:50 +00:00
builder.WriteString(t[r : r+1])
}
return builder.String()
}