以下是一个遍历文件夹并复制所有文件到新文件夹的示例代码:


package main
import (
    "fmt"
    "io"
    "os"
    "path/filepath"
)
func main() {
    // 原文件夹路径
    srcPath := "source_folder"
    // 新文件夹路径
    dstPath := "destination_folder"
    // 遍历原文件夹下所有文件和子文件夹
    err := filepath.Walk(srcPath, func(path string, info os.FileInfo, err error) error {
        if err != nil {
            return err
        }
        // 如果当前路径是文件夹,无需操作,继续遍历
        if info.IsDir() {
            return nil
        }
        // 创建目标文件夹路径
        dstFilePath := filepath.Join(dstPath, info.Name())
        // 打开源文件
        srcFile, err := os.Open(path)
        if err != nil {
            return err
        }
        defer srcFile.Close()
        // 创建或截断目标文件
        dstFile, err := os.Create(dstFilePath)
        if err != nil {
            return err
        }
        defer dstFile.Close()
        // 复制源文件内容到目标文件
        _, err = io.Copy(dstFile, srcFile)
        if err != nil {
            return err
        }
        fmt.Printf("Copied %s to %s\n", path, dstFilePath)
        return nil
    })
    if err != nil {
        fmt.Println(err)
    }
}
filepath.Walk()
filepath.Join()filepath.Join()

此代码只是一个示例,您可以根据需要进行修改和定制。