package util import ( "io" "os" "path/filepath" ) func ReadFile(filePath string) (string, error) { // 1 打开文件 file, err := os.Open(filePath) if err != nil { return "", err } defer file.Close() // 2 读取文件内容 content, err := io.ReadAll(file) if err != nil { return "", err } return string(content), err } func RemoveFile(path string) error { // 检查文件是否存在 if _, err := os.Stat(path); err == nil { // 文件存在,执行删除操作 err = os.Remove(path) if err != nil { return err } } return nil } func WriteFile(sourceContent string, targetFilePath string) error { if err := CreateFile(targetFilePath); err != nil { return err } if err := os.WriteFile(targetFilePath, []byte(sourceContent), 0644); err != nil { return err } return nil } // CreateFile 存在则覆盖,不存在则创建文件 func CreateFile(filePath string) error { if err := CreateParentDir(filePath); err != nil { return err } // 创建文件,如果文件已存在则覆盖 file, err := os.Create(filePath) if err != nil { return err } defer func(file *os.File) { err := file.Close() if err != nil { } }(file) return nil } // CreateParentDir 存在不创建,不存在则创建父目录 func CreateParentDir(filePath string) error { if err := os.MkdirAll(filepath.Dir(filePath), os.ModePerm); err != nil { return err } return nil }