温馨提示×

go语言怎么批量修改文件

小亿
105
2023-11-30 09:50:21
栏目: 编程语言

在Go语言中,可以使用ioutil包中的ReadDir函数来遍历指定目录下的所有文件,然后使用os包中的Rename函数或者WriteFile函数来批量修改文件。

下面是一个示例代码,可以将指定目录下的所有文件名添加一个后缀:

package main

import (
	"fmt"
	"io/ioutil"
	"os"
	"path/filepath"
)

func main() {
	dir := "./path/to/directory" // 指定目录

	files, err := ioutil.ReadDir(dir)
	if err != nil {
		fmt.Println("读取目录失败:", err)
		return
	}

	for _, file := range files {
		oldName := file.Name()
		newName := oldName + ".bak" // 添加后缀

		oldPath := filepath.Join(dir, oldName)
		newPath := filepath.Join(dir, newName)

		err := os.Rename(oldPath, newPath)
		if err != nil {
			fmt.Printf("重命名文件 %s 失败: %v\n", oldName, err)
		} else {
			fmt.Printf("重命名文件 %s 成功\n", oldName)
		}
	}
}

注意事项:

  • 需要使用filepath.Join函数来构建文件路径,以保证跨平台的兼容性。
  • 使用Rename函数时,需要传入文件的原路径和新路径。
  • 使用WriteFile函数时,需要传入文件的新路径和修改后的内容。

0