现在,我正在尝试使用os.Create函数,但是在指定文件路径时出现错误。我需要将HTML中的文件上传到特定目录的文件系统中。
file,err:= c.FormFile("file")
if err!=nil{
checkErr(err)
}
src, err := file.Open()
if err!=nil{
checkErr(err)
}
defer src.Close()
abs,err :=filepath.Abs("/dir1/dir2/")
if err!=nil{
checkErr(err)
}
dst,err := os.Create(abs+"/"+file.Filename)
if err !=nil{
checkErr(err)
}
defer dst.Close()
if _,err = io.Copy(dst,src); err!=nil{
checkErr(err)
}
我必须将文件上传到dir2目录。请帮我一下,谢谢。
abs
是/dir1/dir2/
,那么在使用os.Create
创建文件时需要连接额外的/
。 - Rudziankoŭfilepath.Join(abs, file.Filename)
替换abs+"/"+file.Filename
。另外,使用客户端提供的文件名可能存在安全隐患。 - Charlie Tumahai