如何在 Golang 中生成随机字符串?
作者:吹吹风会发光
时间:2025-06-04
来源:正软商城
浏览:4
在Golang中可以通过使用crypto/rand包中的RandStringBytes函数生成随机字符串。该函数接受两个参数,第一个参数指定要生成的随机字符串的长度,第二个参数是一个字节数组,指定要使用的字符范围。
本文目录
在 Golang 中可以通过使用 crypto/rand 包中的 RandStringBytes 函数生成随机字符串。该函数接受两个参数,第一个参数指定要生成的随机字符串的长度,第二个参数是一个字节数组,指定要使用的字符范围。

如何在 Golang 中生成随机字符串?
在 Golang 中生成随机字符串非常简单,只需使用 crypto/rand 包中的 RandStringBytes 函数即可。
语法
func RandStringBytes(n int, alphabet []byte) ([]byte, error)
其中:
n指定要生成的随机字符串的长度。alphabet是一个字节数组,指定要使用的字符范围。
用法
以下是使用 RandStringBytes 函数生成随机字符串的示例:
package main
import (
"crypto/rand"
"fmt"
)
func main() {
n := 10
charset := []byte("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
b, err := rand.RandStringBytes(n, charset)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("随机字符串:%s\n", b)
}实战案例
生成指定长度的随机字母数字字符串:
package main
import (
"crypto/rand"
"fmt"
)
func main() {
n := 10
charset := []byte("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
b, err := rand.RandStringBytes(n, charset)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("随机字符串:%s\n", b)
}生成指定长度的随机小写字母字符串:
package main
import (
"crypto/rand"
"fmt"
)
func main() {
n := 10
charset := []byte("abcdefghijklmnopqrstuvwxyz")
b, err := rand.RandStringBytes(n, charset)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("随机字符串:%s\n", b)
}生成指定长度的随机十六进制字符串:
package main
import (
"crypto/rand"
"fmt"
)
func main() {
n := 10
charset := []byte("0123456789abcdef")
b, err := rand.RandStringBytes(n, charset)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("随机字符串:%s\n", b)
}
作者最新文章
ABBYY FineReader内容导入 文件添加步骤
2026-11-04 20:14
Agent Space智能体如何进行功能测试
2026-11-01 08:45
Proxifier怎么卸载:Windows标准版彻底移除与配置清理指南
2026-10-30 09:37
七彩虹 iGame RTX 5070 Ti Ultra SFF 显卡图赏:嘻哈涂鸦风,设计更潮酷
2026-10-26 16:48
viso如何导入word的详细操作步骤教程
2026-10-20 16:03
热门文章
更多
精品专题
更多
Mac软件
更多
火山引擎 网页版
Windows/ macOS/ Linux
火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。
















