49 lines
1016 B
Go
49 lines
1016 B
Go
package core
|
|
|
|
import (
|
|
"os"
|
|
)
|
|
|
|
func IsFileExist(filename string) bool {
|
|
if _, err := os.Stat(filename); os.IsNotExist(err) {
|
|
return false
|
|
}
|
|
return true
|
|
}
|
|
func EnsureFileExists(filename string) (bool, error) {
|
|
// 检查文件是否存在
|
|
if _, err := os.Stat(filename); os.IsNotExist(err) {
|
|
// 文件不存在,创建文件
|
|
file, err := os.Create(filename)
|
|
if err != nil {
|
|
return false, err
|
|
}
|
|
defer file.Close()
|
|
return true, nil
|
|
}
|
|
return true, nil
|
|
}
|
|
func WriteFile(filename, content string) (bool, error) {
|
|
// 打开文件以覆盖写入数据
|
|
file, err := os.OpenFile(filename, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
|
|
if err != nil {
|
|
return false, err
|
|
}
|
|
defer file.Close()
|
|
// 将数据写入文件
|
|
_, err = file.WriteString(content)
|
|
if err != nil {
|
|
return false, err
|
|
}
|
|
return true, err
|
|
}
|
|
|
|
func ReadFile(filename string) (string, error) {
|
|
// 读取整个文件内容
|
|
content, err := os.ReadFile(filename)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
return string(content), nil
|
|
}
|