用到的頭文件:bufio、io哩掺、os
第一步:獲取file
file, error := os.Open(fileName) // 其中fileName是文件的完整路徑
第二步:關閉file,使用defer,最后再關閉
defer file.Close()
第三步:使用bufio讀取文件內容
read, err := bufio.NewReader(file)
第四步:把讀取的內容轉換為字符串
str, erro := read.ReadString('\n')
最后:完整例子如下: (適合大文件的方式,)
fileName := "/Users/xxxx/Desktop/test.txt"
file, error := os.Open(fileName) // 獲取到file
if error != nil {
fmt.Println("讀取失敗===%v", error)
} else {
fmt.Printf("讀取成功===%v", file)
}
defer file.Close() // 關閉file
read := bufio.NewReader(file) // 從file中讀取字符串
for {
str, erro := read.ReadString('\n')
fmt.Println(str)
if erro == io.EOF { // 結束
break
}
}
小文件的情況下可以使用下面方法特愿,一次性讀取仲墨。
fileName := "/Users/zhangmingwei/Desktop/test.txt"
contentSlice, err := os.ReadFile(fileName) // 讀取返回切片。打開和關閉都被封裝到ReadFile里面了揍障。
if err != nil {
fmt.Println(err)
} else {
lastString := string(contentSlice) // 把切片轉換為字符串
fmt.Printf("讀取成功內容:\n%v", lastString)
}