package staros import ( "errors" "os" ) var ERR_ALREADY_LOCKED = errors.New("ALREADY LOCKED") var ERR_TIMEOUT = errors.New("TIME OUT") func NewFileLock(filepath string) FileLock { return FileLock{ filepath: filepath, } } // 检测文件/文件夹是否存在 func Exists(path string) bool { _, err := os.Stat(path) if err != nil && os.IsNotExist(err) { return false } return true } // IsFile 返回给定文件地址是否是一个文件, //True为是一个文件,False为不是文件或路径无效 func IsFile(fpath string) bool { s, err := os.Stat(fpath) if err != nil { return false } return !s.IsDir() } // IsFolder 返回给定文件地址是否是一个文件夹, //True为是一个文件夹,False为不是文件夹或路径无效 func IsFolder(fpath string) bool { s, err := os.Stat(fpath) if err != nil { return false } return s.IsDir() }