go 判断文件/目录是否存在、区分文件和目录

判断文件/目录是否存在


package main

import (
	"os"
        "fmt"
)

func main()  {

	file := "/root/data/testFile.txt"
        
        fmt.Println(IsExist(file))
}

// IsExist checks whether a file or directory exists.
// It returns false when the file or directory does not exist.
func IsExist(f string) bool {
	_, err := os.Stat(f)
	return err == nil || os.IsExist(err)
}

区分目录和文件

package main

import (
	"os"
        "fmt"
)

func main()  {

	file := "/root/data/testFile.txt"

        fmt.Printf("%s is file: %v\n", file, IsFile(file))

}

// IsFile checks whether the path is a file,
// it returns false when it's a directory or does not exist.
func IsFile(f string) bool {
	fi, e := os.Stat(f)
	if e != nil {
		return false
	}
	return !fi.IsDir()
}

posted @ 2018-06-01 10:11  kangeloo  阅读(8816)  评论(0编辑  收藏  举报