自动化管理文件和文件夹
创建临时文件和文件夹
创建临时文件
包名:io/ioutil
原型:func TempFile(dir, prefix string) (f *os.File, err error)
作用:在 dir
目录下创建一个新的、使用 prefix
为前缀的临时文件,以读写模式打开该文件并返回 os.File
指针。如果 dir
是空字符串,TempFile
使用默认用于临时文件的目录(参见 os.TempDir
函数)。不同程序同时调用该函数会创建不同的临时文件,调用本函数的程序有责任在不需要临时文件时摧毁它。
返回:*os.File
、 error
示例:
package main
import (
"fmt"
"io/ioutil"
)
func main() {
dir := `F:\blog`
// 在 DIR 目录下创建 tmp 为文件名前缀的文件,获得 file 文件指针
// DIR 必须存在,否则创建不成功
file, err := ioutil.TempFile(dir, "tmp")
if err != nil {
fmt.Println("文件创建失败")
return
}
defer file.Close()
// 利用 file 指针的 WriteString() 写入内容
file.WriteString("Golang")
}
创建临时文件夹
包名:io/ioutil
原型:func TempDir(dir, prefix string) (name string, err error)
作用:在 dir
目录里创建一个新的、使用 prfix
作为前缀的临时文件夹,并返回文件夹的路径。如果 dir
是空字符串,TempDir
使用默认用于临时文件的目录(参见 os.TempDir
函数)。不同程序同时调用该函数会创建不同的临时目录,调用本函数的程序有责任在不需要临时文件夹时摧毁它。
返回:string
、 error
示例:
package main
import (
"fmt"
"io/ioutil"
)
func main() {
dir := `F:\blog`
// 在 DIR 目录下创建 tmp 为目录名前缀的目录
// DIR 必须存在,否则创建不成功
folder, err := ioutil.TempDir(dir, "tmp")
if err != nil {
fmt.Println("临时目录创建失败")
return
}
// 生成的目录名为 tmpXXXXX,XXXXX 为一个随机数
fmt.Println(folder)
}