golang 文件基本操作
import ( "bufio" "fmt" "io" "os" ) //写入文件 func WriteFile(path string) { //新建文件 f, err := os.Create(path) if err != nil { fmt.Println("err=", err) return } //使用完毕需要关闭文件 defer f.Close() for i := 0; i < 10; i++ { f.WriteString(fmt.Sprintf("i=%d\n", i)) } } //读取文件 func ReadFile(path string) { //打开文件 f, err := os.Open(path) if err != nil { fmt.Println("err=", err) return } //关闭文件 defer f.Close() buf := make([]byte, 1024) if n, err1 := f.Read(buf); err1 != nil && err1 != io.EOF { fmt.Println("err1=", err1) return } else { fmt.Println("buf=", string(buf[:n])) } } //读取文件一行 func ReadFileLine(path string) { //打开文件 f, err := os.Open(path) if err != nil { fmt.Println("err=", err) return } //关闭文件 defer f.Close() r := bufio.NewReader(f) for { if buf, err := r.ReadBytes('\n'); err != nil { if err == io.EOF { break } } else { fmt.Println(string(buf)) } } } func main() { path := "./demo.txt" WriteFile(path) ReadFile(path) ReadFileLine(path) }