读文件
func ReadFile_v1(filename string) {
    var (
        err error
        content []byte
    )
    fileObj,err := os.Open(filename)
    if err != nil {
        fmt.Println("os open error:",err)
        return
    }
    defer fileObj.Close()
    content,err = ioutil.ReadAll(fileObj)
    if err != nil {
        fmt.Println("ioutil.ReadAll error:",err)
        return
    }
    fmt.Println(string(content))
}
// 还有种方法
func Readfile_v2(filename string) {
    var (
        err error
        content []byte
    )
    content,err = ioutil.ReadFile(filename)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(string(content))
}
写入文件
func WriteFile(filename , data string) {
    var (
        err error
    )
    // 拿到一个文件对象
    // file对象肯定是实现了io.Reader,is.Writer
    fileObj,err := os.Create(filename)
    if err != nil {
        fmt.Println(err)
        return
    }
    // 方式一
    _,_ = fmt.Fprintf(fileObj,data)
    
    // 方式二
    writer := bufio.NewWriter(fileObj)
    defer writer.Flush()
    writer.WriteString(data)
}
 
 
 
 
 
 