主にネットワーク関係のファイルの読み書きや、受信内容の読み込みに使用されます。
os系でも同じような結果を取得することはできますが、
利用用途によって、使い分けがされています。
ファイルの読み書きの例です。
content, err := ioutil.ReadFile("main.go") if err != nil { log.Fatalln(err) } fmt.Println(string(content)) if err := ioutil.WriteFile("ioutil_temp.go", content, 0666); err != nil { // 第1引数に出力ファイル名、第2引数に内容、第3引数に権限設定 log.Fatalln(err) }
受信内容の読み込み、出力例です。
r := bytes.NewBuffer([]byte("xxxx")) // byte配列をテスト用に生成 content2, _ := ioutil.ReadAll(r) // 2つ目の返り値であるerrは使用しないため、破棄 fmt.Println(string(content2))