golang文件操作

文件操作的多种方式,目前还没有测试哪种高效,和底层方法的实现

package main

import (
    "bufio"
    "fmt"
    "io"
    "io/ioutil"
    "os"
)

func CheckError(err error) {
    if err != nil {
        panic(err)
    }
}


func main() {

    //通过io.WriteString 写文件
    fp, err := os.Create("test1.txt")
    CheckError(err)
    n, err := io.WriteString(fp, "first file")
    CheckError(err)
    defer fp.Close()
    fmt.Println("test1.txt write:", n)

    //通过ioutil.WriteFile写文件
    err = ioutil.WriteFile("test2.txt", []byte("second file"), 0755)
    CheckError(err)

    //通过fp2.WriteString写文件
    fp2, err := os.Create("test3.txt")
    CheckError(err)
    defer fp2.Close()
    n, err = fp2.WriteString("third file")
    CheckError(err)
    fmt.Println("test3.txt write:", n)

    //通过buffio写文件
    fp3, err := os.Create("test4.txt")
    CheckError(err)
    defer fp3.Close()
    bufferWriter := bufio.NewWriter(fp3)
    bufferWriter.WriteString("four file")
    bufferWriter.Flush()
}

你可能感兴趣的:(goang)