本文實(shí)例分析了GO語(yǔ)言文件的創(chuàng)建與打開(kāi)用法。分享給大家供大家參考。具體分析如下:
文件操作是個(gè)很重要的話(huà)題,使用也非常頻繁,熟悉如何操作文件是必不可少的。Golang 對(duì)文件的支持是在 os package 里,具體操作都封裝在 type File struct {} 結(jié)構(gòu)體中。
一、func Open(name string) (file *File, err error)
再簡(jiǎn)單不過(guò)了,給一個(gè)路徑給它,返回文件描述符,如果出現(xiàn)錯(cuò)誤就會(huì)返回一個(gè) *PathError。
這是一個(gè)只讀打開(kāi)模式,實(shí)際上就是 os.OpenFile() 的快捷操作,它的原型如下:
打開(kāi)標(biāo)記:
O_RDONLY:只讀模式(read-only)
O_WRONLY:只寫(xiě)模式(write-only)
O_RDWR:讀寫(xiě)模式(read-write)
O_APPEND:追加模式(append)
O_CREATE:文件不存在就創(chuàng)建(create a new file if none exists.)
O_EXCL:與 O_CREATE 一起用,構(gòu)成一個(gè)新建文件的功能,它要求文件必須不存在(used with O_CREATE, file must not exist)
O_SYNC:同步方式打開(kāi),即不使用緩存,直接寫(xiě)入硬盤(pán)
O_TRUNC:打開(kāi)并清空文件
文件權(quán)限(unix權(quán)限位):只有在創(chuàng)建文件時(shí)才需要,不需要?jiǎng)?chuàng)建文件可以設(shè)置為 0。os庫(kù)雖然提供常量,但是我一般直接寫(xiě)數(shù)字,如0664。
如果你需要設(shè)置多個(gè)打開(kāi)標(biāo)記和unix權(quán)限位,需要使用位操作符"|",示例代碼如下:
三、func Create(name string) (file *File, err error)
實(shí)際上這也是 os.OpenFile() 的快捷操作。創(chuàng)建一個(gè)新文件并以讀寫(xiě)方式打開(kāi),權(quán)限位"0666",如果文件存在則會(huì)清空。原型如下:
希望本文所述對(duì)大家的GO語(yǔ)言程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注