在Go语言中,可以使用os包提供的Copy函数实现文件拷贝。
具体用法如下:
import (
"io"
"os"
)
func copyFile(src, dst string) (int64, error) {
sourceFileStat, err := os.Stat(src)
if err != nil {
return 0, err
}
if !sourceFileStat.Mode().IsRegular() {
return 0, fmt.Errorf("%s is not a regular file", src)
}
source, err := os.Open(src)
if err != nil {
return 0, err
}
defer source.Close()
destination, err := os.Create(dst)
if err != nil {
return 0, err
}
defer destination.Close()
return io.Copy(destination, source)
}
其中,src表示源文件路径,dst表示目标文件路径。函数返回值为拷贝的字节数和可能出现的错误。注意,在拷贝完成后,需要手动关闭源文件和目标文件。