緩存讀取文件
package main
import (
"os"
"fmt"
"bufio"
"io"
)
func main() {
inputFile, error := os.Open("C:/Users/Administrator/Desktop/test.txt")
if error != nil {
fmt.Println("Open File error", error)
}
/**
在函數中,編程人員需要創建資源(數據庫連接,文件句柄,鎖等)爲了完成執行完畢,及時釋放資源,
Go 的設計者提供了defer (延時機制)
當go 執行到一個 defer 時,不會立即執行defer 後的語句,而是將defer後的語句雅茹到一個棧中(defer棧)
當函數執行完畢,從defer棧中,依次從棧頂取出語句執行(遵循棧,先入後出的機制)
*/
defer inputFile.Close()
inputReader := bufio.NewReader(inputFile)
for {
inputStr,readerError := inputReader.ReadString('\n')
if readerError == io.EOF{
break //return
}
fmt.Print(inputStr)
}
fmt.Println()
}