ioutil
最后更新于:2022-04-02 02:44:23
[TOC]
## ioutil
### ReadAll - 获取实现`Read`接口的全部数据
```
r := strings.NewReader("hello world")
b, err := ioutil.ReadAll(r)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n", b) // hello world
```
### ReadDir 读取目录下的文件
```
infos, e := ioutil.ReadDir("./")
if e != nil {
fmt.Println(e)
}
for _, v := range infos {
if v.IsDir() {
fmt.Println(v.Name())
}
}
```
### ReadFile 读文件
```
bytes, e := ioutil.ReadFile("go.sum")
```
### WriteFile 写文件
```
ioutil.WriteFile("test.txt", []byte("hello word"), os.ModePerm)
```
### TempDir / TempFile 生成临时目录或文件
创建后记得删除
```
content := []byte("temporary file's content")
dir, err := ioutil.TempDir("", "example")
if err != nil {
log.Fatal(err)
}
defer os.RemoveAll(dir) // clean up
tmpfn := filepath.Join(dir, "tmpfile")
if err := ioutil.WriteFile(tmpfn, content, 0666); err != nil {
log.Fatal(err)
}
```
';