【golang】ioutilパッケージの使い方

ioutilパッケージとは

ioutilパッケージは、Go言語でファイルやディレクトリの操作を簡単に行うためのパッケージです。このパッケージには、ファイルの読み込み・書き込みやディレクトリの作成・削除など、様々な機能が提供されています。

ファイルの読み込み

ioutilパッケージを使用して、ファイルを読み込むことができます。ファイルの内容を文字列として取得するには、以下のようにioutil.ReadFile()関数を使用します。

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    content, err := ioutil.ReadFile("example.txt")
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println(string(content))
    }
}

この例では、example.txtファイルの内容を読み込んで、文字列として表示しています。ioutil.ReadFile()関数は、ファイルの内容とエラーを返します。エラーが発生した場合は、エラーメッセージを表示します。

ファイルの書き込み

ファイルに書き込むには、ioutil.WriteFile()関数を使用します。

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    message := "Hello, world!"
    err := ioutil.WriteFile("example.txt", []byte(message), 0644)
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println("File written successfully")
    }
}

この例では、example.txtファイルに文字列"Hello, world!"を書き込んでいます。ioutil.WriteFile()関数は、ファイル名、書き込むデータ、ファイルのパーミッションを引数に取ります。

ディレクトリの作成

ディレクトリを作成するには、ioutil.Mkdir()関数を使用します。

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    err := ioutil.Mkdir("test", 0755)
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println("Directory created successfully")    }
}

この例では、"test"という名前の新しいディレクトリを作成しています。ioutil.Mkdir()関数は、ディレクトリ名とパーミッションを引数に取ります。

ディレクトリの削除

ディレクトリを削除するには、ioutil.RemoveAll()関数を使用します。

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    err := ioutil.RemoveAll("test")
    if err != nil {
        fmt.Println("Error:", err)
    } else {
        fmt.Println("Directory deleted successfully")
    }
}

この例では、"test"という名前のディレクトリを削除しています。ioutil.RemoveAll()関数は、削除するディレクトリ名を引数に取ります。