看了下go語言的標準庫,最開始看了下io庫想著看看go語言提供的函式如何實現檔案的讀寫,粗略的看了下就想著使用go語言提供的方法讀寫檔案試下吧。
讀檔案,示例:
package main
import (
"fmt"
"io/ioutil"
"os"
)const (
file = "./test.txt"
)//read file
func main()
defer fd.close()
len,err := fd.seek(0
,2)//獲取檔案長度
if err != nil
strbyte := make(byte,len)
fd.seek(0
,0) //移回指標到檔案開頭
fd.read(strbyte) //讀檔案
fmt.println(string(strbyte))
dat,err := ioutil.readfile(file) //直接讀檔案
if err != nil
fmt.println(string(dat))
}
按照c語言的方式進行了檔案的讀寫後,才發現go語言提供了更方便的方法使用ioutil庫中的readfile函式可直接讀取函式。
寫檔案,示例:
//write file
func main()
dstr := byte("this is a test")
if err != nil
defer fd.close()
num,err := fd.write(dstr)
if err != nil
fmt.println(num)
}
const (
// the single letters are the abbreviations
// used by the string method's formatting.
modedir filemode =1
<< (32 -1 - iota) // d: is a directory
modeexclusive // l: exclusive use
modetemporary // t: temporary file (not backed up)
modesymlink // l: symbolic link
modedevice // d: device file
modenamedpipe // p: named pipe (fifo)
modesocket // s: unix domain socket
modesetuid // u: setuid
modesetgid // g: setgid
modechardevice // c: unix character device, when modedevice is set
modesticky // t: sticky
// mask for the type bits. for regular files, none will be set.
modetype = modedir | modesymlink | modenamedpipe | modesocket | modedevice
modeperm filemode =0777
// unix permission bits
)
go 檔案讀寫操作
func fileread path string rb make byte,1024,1024 for fmt.println string rb n err file.close if err nil func bufio path string defer file.close const d...
GO 檔案的讀寫
首先寫乙個檔案 package main import os fmt func writefile path string 寫檔案 var buf string for i 0 i 10 i n n 關閉檔案 defer f.close func main 執行完成後就會在程式的同目錄生成乙個dem...
go語言的讀寫檔案
以create方法寫檔案 以新建的方式開啟,create方法每次開啟都會清空裡面的內容 f,err os.create hah.txt if err nil defer f.close f.writestring hello,kingsoft 以open唯讀的方式開啟 open是以唯讀的方式開啟,只...