go package学習——io/util

4124 ワード

package io/utilはio効用関数をいくつか実現した.

Index

  • Variables
  • func NopCloser(r io.Reader) io.ReadCloser
  • func ReadAll(r io.Reader) ([]byte, error)
  • func ReadDir(dirname string) ([]os.FileInfo, error)
  • func ReadFile(filename string) ([]byte, error)
  • func TempDir(dir, prefix string) (name string, err error)
  • func TempFile(dir, prefix string) (f *os.File, err error)
  • func WriteFile(filename string, data []byte, perm os.FileMode) error

  • Package Files


    blackhole.go ioutil.go tempfile.go

    func ReadAll

    func ReadAll(r io.Reader) ([]byte, error)
    errorまたはEOFに遭遇するまで読みます.読み込んだデータを返します.

    func ReadDir

    func ReadDir(dirname string) ([]os.FileInfo, error)
    は、与えられたディレクトリ名に従ってディレクトリを読み出し、ディレクトリのFileInfoを返す.

    func ReadFile

    func ReadFile(filename string) ([]byte, error)
    は、ファイル名に従ってファイルを読み出し、読み出した内容を返す.

    func WriteFile

    func WriteFile(filename string, data []byte, perm os.FileMode) error

    指定されたファイルにデータを書き込む.指定されたファイルが存在しない場合はpermに基づいてこのファイルを作成します.存在する場合は、データを切り捨ててから書き込みます.
    //ioutil.go-------------------------------------------------//ReadAll rのすべてのデータを読み込む//読み出したデータと読み出し中に発生したエラーを返す//読み出しに成功した場合、errはEOF func ReadAll(r io.Reader)([]byte,error)func main(){s:=strings.NewReader("Hello World!")ではなくnilを返します.ra, _ := ioutil.ReadAll(s) fmt.Printf("%s", ra)//Hello World! } ------------------------------------------------------------
    //ReadFileファイルのすべてのデータを読み込む//読み込んだデータと読み込み中に発生したエラーを返す//読み込みに成功した場合、errはEOF func ReadFile([]byte,error)func main(){ra,:=ioutil.ReadFile("C:\Windows\win.ini")fmt.Printf("%s",ra")}---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    //WriteFileファイルfilenameにデータdataを書き込む//ファイルが存在しない場合はperm権限でファイルを作成する//ファイルが存在する場合は、ファイルを空にしてから書き込み//書き込み中に発生したエラーfunc WriteFile(filename string,data[byte,perm os.FileMode)error func main(){fn:=“C:\Test.txt”s:=[]byte(“Hello World!”)ioutil.WriteFile(fn, s, os.ModeAppend) rf, _ := ioutil.ReadFile(fn) fmt.Printf("%s", rf)//Hello World! } ------------------------------------------------------------ //ReadDir読み取りディレクトリdirmaneのすべてのディレクトリとファイル(サブディレクトリを含まない)//読み取りファイルを返す情報リストと読み取り中に発生したエラー//返されるファイルリストはソートされたfunc ReadDir(dirname string)([]os.FileInfo,error)funcmain(){rd,err:=ioutil.ReadDir(“C:\Windows”)for_,fi:=rangerd{fmt.Println(”)fmt.Println(fi.Name())mt.ft.ft.Println(fi.Name())ft.ft.ft.ft.mt.Println(fit.mt.Println(fiPrintln(fi.IsDir()) fmt.Println(fi.Size()) fmt.Println(fi.ModTime()) fmt.Println(fi.Mode()) } fmt.Println("") fmt.Println(err)}--------------------------------------------------------//NopCloserはrをReadCloserタイプ//そのCloseメソッドにカプセル化して何もしないfunc NopCloser(r io.Reader)io.ReadCloser ------------------------------------------------------------//tempfile.go-------------------------------------------------//TempFileはディレクトリdirに一時ファイルを作成し、開く//ファイル名prefixを接頭辞//作成したファイルのオブジェクトと作成中に発生したエラーを返します//dirが空の場合、システムの一時ディレクトリに一時ファイルを作成します//環境変数にシステムの一時ディレクトリが設定されていない場合、/tmpでテンポラリファイルを作成する//呼び出し元は、f.Name()メソッドでテンポラリファイルのフルパスを取得する//TempFileで作成したテンポラリファイルを呼び出すことができます.呼び出し元自身がfunc TempFile(dir,prefix string)(f*os.File,err error)func main(){dn:="C:\"f,:=ioutil.TempFile(dn,"Test")fmt.Printf("%s",f.Name()}---------------------------------------------------------------------------------------------------------//TempDir機能はTempFileと同じで、ただし、作成されたのはディレクトリ//戻り値もディレクトリのフルパスfunc TempDir(dir,prefix string)(name string,err error)func main(){dn:=“C:\”f,:=ioutil.TempDir(dn,“Test”)fmt.Printf("%s",f.Name()}のみです.