golang读文件
1、os.Open()
//File文件读操作
func ReadFile() string {
file, err := os.Open("./test.txt")
if err != nil {
fmt.Printf("err:%vn", err)
}
defer file.Close()
var chunk []byte
buf := make([]byte, 100)
for {
count, err := file.Read(buf)
if err != nil && err != io.EOF {
fmt.Println("read buf fail", err)
return ""
}
if count == 0 {
break
}
chunk = append(chunk, buf[:count]...)
}
return string(chunk)
}
2、ioutil.ReadFile
func ReadFile2() {
b, _ := ioutil.ReadFile("./test.txt")
fmt.Printf("string(b): %vn", string(b))
}
3、ioutil.ReadAll
func ReadFile3() {
f, _ := os.Open("./test.txt") // File实现了Reader
defer f.Close()
b, err := ioutil.ReadAll(f)
if err != nil {
fmt.Printf("err: %vn", err)
}
fmt.Printf("string(b): %vn", string(b))
}