"crypto/rand.Read"生成的随机数可以编码成纯数字字符串吗?有没有现成的官方方法?
![]() |
1
yang0327519 12 天前
package main
import ( "crypto/rand" "fmt" ) func main() { n := 10 // 生成 10 个随机字节 buf := make([]byte, n) _, err := rand.Read(buf) if err != nil { panic(err) } result := "" for _, b := range buf { result += fmt.Sprintf("%03d", b) // 将每个字节转换为三位数字的字符串 } fmt.Println(result) // 输出纯数字字符串 } |
2
body007 12 天前
package main
import ( "crypto/rand" "fmt" "math/big" ) func main() { err := test() if err != nil { panic(err) } } func test() error { limit := big.NewInt(10000000000) // 指定最大值,[0, max) num, err := rand.Int(rand.Reader, limit) if err != nil { return err } fmt.Println(num.String()) return nil } |
3
dyllen OP |