本文发布于Cylon的收藏册,转载请著名原文链接~

bufio包实现了有缓冲的I/O。它包装一个io.Reader或io.Writer接口对象,os.stdin就是实现了这个接口

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
package main
 
import (
    "bufio"
    "fmt"
    "os"
)
 
var buff *bufio.Reader
 
func main() {
    buff = bufio.NewReader(os.Stdin)
    str, err := buff.ReadString('\n')
    
    if err == nil {
        fmt.Printf("input was :%s", str)
    }
}

ReadString(byte) 遇到byte后返回,包含已读到的和byte,如果在读到之前遇到错误,返回读取的信息及该错误

在写文件时。可以写入缓冲区来可以提升磁盘性能

本文发布于Cylon的收藏册,转载请著名原文链接~

链接:Go每日一库 - bufio缓冲区的终端输入

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」 许可协议进行许可。