Go基础_1_64 bufio-write

Tutorial: Go初级 Category: Go Published: 2026-04-07 13:58:26 Views: 21 Likes: 0 Comments: 0
package main

import (
    "bufio"
    "fmt"
    "os"
)

func main() {
    /*
        bufio:高效io读写
            buffer缓存
            io:input/output

        将io包下的Reader,Write对象进行包装,带缓存的包装,提高读写的效率

            func (b *Writer) Write(p []byte) (nn int, err error)
            func (b *Writer) WriteByte(c byte) error
            func (b *Writer) WriteRune(r rune) (size int, err error)
            func (b *Writer) WriteString(s string) (int, error)

    */

    fileName := "D:\\Go\\web2\\aa.txt"
    file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY, os.ModePerm)
    if err != nil {
        fmt.Println(err)
        return
    }
    defer file.Close()

    w1 := bufio.NewWriter(file)
    // n, err := w1.WriteString("helloworld")
    // fmt.Println(err)
    // fmt.Println(n) // 10
    // w1.Flush()     // 刷新缓冲区,即把缓冲区的数据写到文件

    for i := 1; i <= 1000; i++ {
        w1.WriteString(fmt.Sprintf("%d:hello", i))
    }
    w1.Flush() // 缓冲区还有数据
}