ioutil标准库中提供了一些常用、方便的IO操作函数。
ReadAll 函数
很多时候,我们需要一次性读取io.Reader中的数据,通过上一节的讲解,我们知道有很多种实现方式。考虑到读取所有数据的需求比较多,Go提供了ReadAll这个函数,用来从io.Reader中一次读取所有数据。
func ReadAll(r io.Reader) ([]byte, error)
package main
import (
"fmt"
"io/ioutil"
"os"
)
func main() {
file, _ := os.Open(`file_path`)
con, _ := ioutil.ReadAll(file)
fmt.Println(string(con))
}
该函数成功调用后会返回err == nil而不是err == EOF。
ReadDir 函数
ioutil中提供了一个方便的函数:ReadDir,它读取目录并返回排好序的文件和子目录名([]os.FileInfo)。
package main
import (
"fmt"
"io/ioutil"
)
func main() {
fileInfos, err := ioutil.ReadDir("d:")
if err != nil {
fmt.Println(err)
return
}
for _, info := range fileInfos {
fmt.Println(info