Go語言學習筆記之文件讀寫操作詳解
文件操作比較多,分為幾篇來寫吧。首先是文件的讀寫,在平時的工程化操作中使用最多。
文件寫
樣例代碼如下
package main
import (
"bufio"
"fmt"
"io"
"os"
)
//寫文件
func DoWriteFile() error {
_filePath := "./test.txt"
_file, _err := os.OpenFile(_filePath, os.O_WRONLY|os.O_CREATE, 0666)
if _err != nil {
fmt.Printf("打開文件錯誤=%v\n", _err)
return _err
}
//提前關閉文件
defer _file.Close()
//寫入文件
_writer := bufio.NewWriter(_file)
_writer.WriteString("hahaha!\n")
_writer.Flush()
return nil
}
func main() {
DoWriteFile()
}
這里使用了os.OpenFile方法,后面的os.O_WRONLY模式會在后面提到。
執(zhí)行結(jié)果

文件讀
樣例代碼如下
package main
import (
"bufio"
"fmt"
"io"
"os"
)
//讀文件
func DoReadFile() error {
_filePath := "./test.txt"
_file, _err := os.Open(_filePath)
if _err != nil {
fmt.Printf("打開文件錯誤=%v\n", _err)
return _err
}
defer _file.Close()
_reader := bufio.NewReader(_file)
for true {
str, err := _reader.ReadString('\n')
if err == io.EOF {
break
}
fmt.Println(str)
}
return _err
}
func main() {
DoReadFile()
}
執(zhí)行結(jié)果如下
hahaha!
Process finished with the exit code 0
注意,os.Open方法是以只讀模式打開文件。
小結(jié)
在使用os.OpenFile方法的時候需要使用到文件模式,文件的打開模式如下:
O_RDONLY int = syscall.O_RDONLY // 只讀模式打開文件
O_WRONLY int = syscall.O_WRONLY // 只寫模式打開文件
O_RDWR int = syscall.O_RDWR // 讀寫模式打開文件
O_APPEND int = syscall.O_APPEND // 寫操作時將數(shù)據(jù)附加到文件尾部
O_CREATE int = syscall.O_CREAT // 如果不存在將創(chuàng)建一個新文件
O_EXCL int = syscall.O_EXCL // 和O_CREATE配合使用,文件必須不存在
O_SYNC int = syscall.O_SYNC // 打開文件用于同步I/O
O_TRUNC int = syscall.O_TRUNC // 如果可能,打開時清空文件
到此這篇關于Go語言學習筆記之文件讀寫操作詳解的文章就介紹到這了,更多相關Go語言文件讀寫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
go?tool?pprof?參數(shù)?'-base'?和?'-diff_base&
這篇文章主要介紹了go?tool?pprof?參數(shù)?'-base'?和?'-diff_base'之間的區(qū)別,兩個參數(shù)都是用于計算當前?profile文件減去基準profile文件所獲得的差值,用這個差值生成一個新的profile文件,本文給大家介紹的非常詳細,需要的朋友可以參考下2023-05-05

