代码拉取完成,页面将自动刷新
package utils
import (
"os"
jsoniter "github.com/json-iterator/go"
)
// 判断文件或目录是否存在
func Exists(path string) bool {
_, err := os.Stat(path)
return err == nil || os.IsExist(err)
}
func FileSize(file string) (int64, error) {
f, e := os.Stat(file)
if e != nil {
return 0, e
}
return f.Size(), nil
}
func LoadFile(path string) ([]byte, bool) {
fileSize, err := FileSize(path)
if nil != err || fileSize < 1 {
return nil, false
}
buf := make([]byte, fileSize)
f, err := os.Open(path)
defer f.Close()
if nil != err {
return nil, false
}
n, err := f.Read(buf)
if nil != err || fileSize != int64(n) {
return nil, false
}
return buf, true
}
func LoadConf(path string, cf interface{}) bool {
fileSize, err := FileSize(path)
if nil != err || fileSize < 1 {
return false
}
buf := make([]byte, fileSize)
f, err := os.Open(path)
defer f.Close()
if nil != err {
return false
}
n, err := f.Read(buf)
if nil != err || fileSize != int64(n) {
return false
}
if nil != UnmarshalJson(buf, cf) {
return false
}
return true
}
func IsExist(path string) bool {
_, err := os.Stat(path)
return err == nil || os.IsExist(err)
}
func SaveConf(conf interface{}, path string) bool {
buf, err := jsoniter.MarshalIndent(conf, "", " ")
if nil != err {
return false
}
f, err := os.Create(path)
if nil != err {
return false
}
defer f.Close()
size := len(buf)
n, err := f.Write(buf)
if nil != err || n != size {
return false
}
return true
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。