标签:需要 close [] == 读取文件 defer ola string import
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)
}
标签:需要 close [] == 读取文件 defer ola string import
原文地址:https://www.cnblogs.com/lemonzwt/p/10029847.html