新聞中心
Go語言中拷貝文件的幾種常用的方式及性能對(duì)比
Kotlin是一個(gè)跨編譯平臺(tái)的語言。 現(xiàn)在我們比較熟悉的是JVM平臺(tái)的Kotlin/JVM,但實(shí)際上還有Kotlin/javascript和正在開發(fā)的Kotlin/Native。 對(duì)不同編譯平臺(tái)的Kotlin來說,各方面差異比較大,所以在此分開討論。 先講講大家最熟悉的Kotlin/JVM。
成都創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、做網(wǎng)站網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元靈寶做網(wǎng)站,已為上家服務(wù),為靈寶各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108
Go語言文件操作
本文主要介紹了Go語言中文件讀寫的相關(guān)操作。
文件是什么?
計(jì)算機(jī)中的文件是存儲(chǔ)在外部介質(zhì)(通常是磁盤)上的數(shù)據(jù)集合,文件分為文本文件和二進(jìn)制文件。
os.Open() 函數(shù)能夠打開一個(gè)文件,返回一個(gè) *File 和一個(gè) err 。對(duì)得到的文件實(shí)例調(diào)用 close() 方法能夠關(guān)閉文件。
為了防止文件忘記關(guān)閉,我們通常使用defer注冊(cè)文件關(guān)閉語句。
Read方法定義如下:
它接收一個(gè)字節(jié)切片,返回讀取的字節(jié)數(shù)和可能的具體錯(cuò)誤,讀到文件末尾時(shí)會(huì)返回 0 和 io.EOF 。 舉個(gè)例子:
使用for循環(huán)讀取文件中的所有數(shù)據(jù)。
bufio是在file的基礎(chǔ)上封裝了一層API,支持更多的功能。
io/ioutil 包的 ReadFile 方法能夠讀取完整的文件,只需要將文件名作為參數(shù)傳入。
os.OpenFile() 函數(shù)能夠以指定模式打開文件,從而實(shí)現(xiàn)文件寫入相關(guān)功能。
其中:
name :要打開的文件名 flag :打開文件的模式。 模式有以下幾種:
perm :文件權(quán)限,一個(gè)八進(jìn)制數(shù)。r(讀)04,w(寫)02,x(執(zhí)行)01。
golang文件操作-讀操作的常見方式匯總
ioutil的方式能夠讀取整個(gè)文件,只需傳入文件名,操作簡單。該操作方式需要把文件讀入內(nèi)容,效率高,同樣占用內(nèi)存也高
該操作同樣可看作按行讀取,將數(shù)據(jù)讀入緩沖區(qū)
另外一種方式為ReadBytes,與readString的區(qū)別為返回格式為切片類型
關(guān)于在go語言中導(dǎo)入當(dāng)前文件夾的步驟
1.先把要導(dǎo)入的包go build - go install
2.接著在要導(dǎo)入的方法中以: 項(xiàng)目名 / 導(dǎo)入的文件名 ?的形式導(dǎo)入即可(如下方test(項(xiàng)目名) / chiid(文件名))
【golang】小技巧-利用io.copy寫數(shù)據(jù)進(jìn)文件
io.copy是按默認(rèn)的緩沖區(qū)32k循環(huán)操作的,不會(huì)將內(nèi)容一次性全寫入內(nèi)存中,這樣就能解決大文件的問題。
當(dāng)前名稱:go語言復(fù)制文件,go編譯二進(jìn)制文件
文章路徑:http://fisionsoft.com.cn/article/dsipepe.html