文件操作的多种方式,目前还没有测试哪种高效,和底层方法的实现
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()
}