go語言基礎 讀寫工具 ioutil包

大家有沒有覺得用os包下讀寫文件很麻煩呀,先要打開文件,然後讀取文件,然後再用[]byte數組在一點一點去讀去寫,下面我來給大家介紹一個很好用的方法,iotuil包,這裏面方法不多但是都是很方便的方法,都是封裝好的,文件不用打開,直接拿來用就可以了

ioUtil包
ReadFile(filename)-->[]byte data  *****
讀取指定文件中的所有內容,返回一個切片,err返回EOF
WriteFile(filename, [] byte data,FileMode) *****
向指定文件中寫出數據,
ReadAll() 讀取數據,讀取完畢後err返回nil而非EOF

package main

import (
   "io/ioutil"
   "fmt"
   "strings"
)

func main()  {
   fileName:="c:\\liu\\pro\\aa.txt"
   bs, err:=ioutil.ReadFile(fileName)
   fmt.Println(err)//<nil>
   fmt.Println(bs)
   fmt.Println(string(bs))

   fileName2:="C:\\Ruby\\pro\\aoo.txt"
   s1:="HelloWorld"
   err=ioutil.WriteFile(fileName2,[]byte(s1),0777)
   fmt.Println(err)

   s2:="qwertyuiopasdfghjklzxcvbnm"
   reader1:=strings.NewReader(s2)//
   //file,err:=os.Open("")//Read()
   bs2,_:=ioutil.ReadAll(reader1)
   fmt.Println(string(bs2))
}

ReadDir(dirname)-->[]FileInfo

獲取指定目錄下的子內容,只有一層


package mainimport ( "io/ioutil" "fmt")func main() { /* readDir(dirname)-->[] FileInfo 獲取對應目錄下的內容,只一層。 */ dirName:="C:\\Ruby\\pro" fileInfos,_:=ioutil.ReadDir(dirName) fmt.Println(len(fileInfos)) for i,fi:= range fileInfos{ fmt.Printf("第%d個子內容:\n",i+1) fmt.Println("\t名字:",fi.Name()) fmt.Println("\t是否是目錄:",fi.IsDir()) }}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章