go语言怎么批量修改文件

2013
2023/12/24 9:50:21
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在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函数时,需要传入文件的新路径和修改后的内容。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Go语言中怎么实现和使用接口