package file
|
|
import (
|
"errors"
|
"os"
|
"path/filepath"
|
)
|
|
func WriteFile(filename string, content []byte) error {
|
path := filepath.Dir(filename)
|
if !IsDir(path) {
|
err := os.Mkdir(path, os.ModeDir)
|
if err != nil {
|
return err
|
}
|
}
|
dstFile, err := os.OpenFile(filename, os.O_CREATE|os.O_TRUNC, 0777)
|
if err != nil {
|
return err
|
}
|
_, err = dstFile.Write(content)
|
return err
|
}
|
|
// Exists 判断所给路径文件/文件夹是否存在
|
func Exists(path string) bool {
|
_, err := os.Stat(path) //os.Stat获取文件信息
|
if err != nil {
|
if os.IsExist(err) {
|
return true
|
}
|
return false
|
}
|
return true
|
}
|
|
// IsDir 判断所给路径是否为文件夹
|
func IsDir(path string) bool {
|
s, err := os.Stat(path)
|
if err != nil {
|
return false
|
}
|
return s.IsDir()
|
}
|
|
// IsFile 判断所给路径是否为文件
|
func IsFile(path string) bool {
|
return !IsDir(path)
|
}
|
|
func ReadFile(filename string) (content []byte, err error) {
|
if !Exists(filename) {
|
return nil, errors.New("file not exist")
|
}
|
return os.ReadFile(filename)
|
}
|