ioutil
ioutil 提供了封装过的对文件和目录的简单 io 操作
看一个遍历目录的操作
func allDir(path string) {
fileInfos, err := ioutil.ReadDir(path)
if err != nil{
fmt.Println(err)
return
}
for _,f := range fileInfos{
if !f.IsDir(){
fmt.Println("file ",f.Name())
return
}
fmt.Println("dir ",f.Name())
allDir(path+"/"+f.Name())
}
}
bufferString := bytes.NewBufferString("哈哈哈哈哈哈")
//读取并抛弃
bufferString.WriteTo(ioutil.Discard)
fmt
fmt 提供了格式化的输入输出,非常类似于 c 的 print 和 scan,但是封装的更巧妙
bufio
func NewReader(rd io.Reader) *Reader
从一个普通的 reader 变成一个具有缓冲的 reader,默认的缓冲大小是 4096,如果打开文件,或者读取太长的字节流,可以让他变成一个 buff.Reader,否则,像读取几个字符这样的操作,就别再为它分配 4kb 的空间了
如果要读取的太大,而且