日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

go语言之文件操作

發(fā)布時(shí)間:2023/12/31 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 go语言之文件操作 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一: 相關(guān)的API

1func Create(name string) (file *File, err Error)根據(jù)提供的文件名創(chuàng)建新的文件,返回一個(gè)文件對象,默認(rèn)權(quán)限是0666 2 func NewFile(fd uintptr, name string) *File根據(jù)文件描述符創(chuàng)建相應(yīng)的文件,返回一個(gè)文件對象 3 func Open(name string) (file *File, err Error)只讀方式打開一個(gè)名稱為name的文件 4 func OpenFile(name string, flag int, perm uint32) (file *File, err Error)打開名稱為name的文件,flag是打開的方式,只讀、讀寫等,perm是權(quán)限 5 func (file *File) Write(b []byte) (n int, err Error)寫入byte類型的信息到文件 6 func (file *File) WriteAt(b []byte, off int64) (n int, err Error)在指定位置開始寫入byte類型的信息 7 func (file *File) WriteString(s string) (ret int, err Error)寫入string信息到文件 8 func (file *File) Read(b []byte) (n int, err Error)讀取數(shù)據(jù)到b中 9 func (file *File) ReadAt(b []byte, off int64) (n int, err Error)從off開始讀取數(shù)據(jù)到b中 10 func Remove(name string) Error刪除文件名為name的文件

二: 寫文件

package mainimport ("os""fmt" )func main() {//新建文件file, err := os.Create("./xxx.txt")if err != nil {fmt.Println(err)return}defer file.Close()//寫入內(nèi)容for i := 0; i < 5; i++ {//寫入信息file.WriteString("ab\n")file.Write([]byte("cd\n"))} }

三:讀文件

package mainimport ("os""fmt" )func main() {//打開文件file, err := os.Open("./xxx.txt")if err != nil {fmt.Println(err)}defer file.Close()buf := make([]byte, 1024)for {//讀文件n, _ := file.Read(buf)if n == 0 {break}fmt.Println(string(buf))} }

四:拷貝文件

package mainimport ("os""fmt""io" )func main() {//打開文件srcFile, err := os.Open("./xxx.txt")if err != nil {fmt.Println(err)return}//創(chuàng)建目標(biāo)文件dstFile, err2 := os.Create("./yyy.txt")if err2 != nil {fmt.Println(err2)return}//切片緩沖區(qū)buf := make([]byte, 1024)for {//從源文件讀n, err := srcFile.Read(buf)//Read()若無法得到更多的結(jié)果,就返回EOFif err != nil && err != io.EOF {fmt.Println(err)break}if n == 0 {fmt.Println("文件處理完畢")break}//讀到的內(nèi)容寫入目標(biāo)文件 dstFile.Write(buf[:n])}srcFile.Close()dstFile.Close() }

?

轉(zhuǎn)載于:https://www.cnblogs.com/liucsxiaoxiaobai/p/10835664.html

總結(jié)

以上是生活随笔為你收集整理的go语言之文件操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。