网站产品要如何做详情,wordpress简历页,2024免费网站推广,页游大全ReadAll
ReadAll方法#xff0c;我们比较常用的工具类方法#xff0c;一次性读取文件的所有内容并返回#xff0c;适用于读取小文件#xff0c;如果文件太大会占用太多内存。调用 ReadAll 方法成功#xff0c;会读取 io.Reader的所有内容#xff0c;返回的 err nil我们比较常用的工具类方法一次性读取文件的所有内容并返回适用于读取小文件如果文件太大会占用太多内存。调用 ReadAll 方法成功会读取 io.Reader的所有内容返回的 err nil而不是 err EOF因为读取完所有数据了完成了我们的任务此时 EOF 不应当是 error.
func main() { file, err : os.Open(test.txt) if err ! nil { fmt.Println(open file err) return } c, err : ioutil.ReadAll(file) fmt.Println(err) fmt.Println(string(c))
} 原型
func ReadAll(r io.Reader)([]byte,error){return readAll(r,bytes.MinRead)
} ReadFile
ReadFile 根据文件名读取文件返回文件的所有内容以及读取过程中产生的error与ReadAll类似读取完文件后EOF 不算做 error因为已经完成了任务。 WriteFile
WriteFile 方法将数据写入文件如果文件不存在会先新建文件如果已存在会把之前的数据先清空再写入 ReadDir
ReadDir 用于获取文件夹下面的所有文件信息(文件夹文件)返回的数据是文件名有序的
fileList, err : ioutil.ReadDir(/Users/admin/study)
for _, f : range fileList {fmt.Println(f.Name(), f.IsDir())
} Discard
Discard 如名字一样是一个用于丢弃数据的地方虽然有时候我们不在意数据内容但可能存在数据不读出来就无法关闭连接的情况这时候就可以使用 io.Copy(ioutil.Discard, io.Reader) 将数据写入 Discard。
TempDir
在 Go 语言中包 os 提供了函数 os.TempDir() 返回当前操作系统下的临时目录。
其次 io/ioutil 包也提供了 ioutil.TempDir() 函数用于在指定目录中创建一个临时文件夹。该函数的原型如下
func TempDir(dir, prefix string) (name string, err error)
如果未指定 dir 那么会自动调用 os.TempDir() 返回的临时目录作为跟目录。 TempFile
func TempFile(dir, pattern string) (f *os.File, err error)
dir 参数用于指定临时文件保存的文件夹如果为空字符串那么会自动调用 os.TempDir() 返回的临时目录作为目录。而 pattern用于指定临时文件的文件名格式。
pattern 是一个类似正则表达式的文件名格式可以使用 * 代表随机字符串的位置。如果pattern中没有 * 号那么会自动将随机字符串添加到文件名的末尾
该函数返回一个 os.File 类型的文件指针我们可以使用该类型提供的各种函数读写该文件。
例外需要注意的是虽然系统可能会自动删除临时文件但这并不一定会发生所以使用完毕之后记得调用 os.Remove(tmpfile.Name()) 来删除临时文件当然了前面一般添加 defer 关键字如下
defer os.Remove(tmpfile.Name())