Go 随机文件名

// 获取随机字母+数字组合字符串
func getRandstring(length int) string {
    if length < 1 {
        return ""
    }
    char := "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    charArr := strings.Split(char, "")
    charlen := len(charArr)
    ran := rand.New(rand.NewSource(time.Now().Unix()))
    var rchar string = ""
    for i := 1; i <= length; i++ {
        rchar = rchar + charArr[ran.Intn(charlen)]
    }
    return rchar
}
// 随机文件名
func RandFileName(fileName string) string{
    randStr := getRandstring(16)
    return randStr + filepath.Ext(fileName)
}
func main()  {
    file := "测试.docx"
    fmt.Println(RandFileName(file))

    // 输出结果
    // VFP65Z85ArD8JHFU.docx
    // iYSocDKXxACgnuHq.docx
}

你可能感兴趣的:(Go 随机文件名)