文件相干信息
能够用fileInfo这个API:
package mainimport ( "fmt" "os")func main() { fileInfo, err := os.Stat("/Users/liberhome/GolandProjects/awesomeProject/test/test.txt") if err != nil { fmt.Println("err: ", err) return } // 文件类型 fmt.Printf("%T\n", fileInfo) // 文件名 fmt.Println(fileInfo.Name()) // size fmt.Println(fileInfo.Size()) // isdir fmt.Println(fileInfo.IsDir()) // Mode fmt.Println(fileInfo.Mode())}
文件权限
权限的示意能够用符号 or 8进制示意
符号示意
第一个是类型,如果是文件 用-示意 目录用d示意
前面三个别离代表以后利用具备的权限、以后利用所在的组、其他人的权限
权限个别分为3种:
r (可读) w(可写) x(可执行) 没有哪一个权限就用-代替示意
-rwxr-xr-x
首先第一个-表明了这是一个文件
前面的rwx表明了这个文件领有可读可写可执行的3个权限
前面的r-x表明了他所在的组的权限是可读可执行不可写
前面的r-x表明了其他人的权限是可读可执行不可写
其实更加罕用的是用
数字示意
r( 可读) 用004示意
w(可写) 用002示意
x(可执行)用001示意
- 用000示意
比方0777 中的7就是4+2+1就是可读可写可执行
文件门路
相对路径与绝对路径的API:filepath
filepath.IsAbs() : 判断是否是绝对路径
filepath.Abs(xxx): 失去文件xxx的绝对路径
os.ModePerm是一个常数 代表0777 也就是可读可写可执行
os.Mkdir能够创立最初一级文件夹
os.MkdirAll能够把到最初一级没有呈现过的文件夹全副创立进去
创立文件
默认采纳0666 可读写不可执行权限
file1, err := os.Create("/Users/liberhome/GolandProjects/awesomeProject/test/test1.txt") if err != nil { fmt.Println(file1) }
关上文件
Open 与 OpenFile的区别:open关上的文件是只读的,OpenFile能够在参数里指定权限关上
敞开文件
file.Close()
删除文件
os.remove("path")//删除文件 or 空的文件夹os.removeAll("path")//删除文件 or 文件夹 [慎用,不会通过回收站]
参考资料起源:
bilibili