Go 言語の組み込みモジュールを触ってみる-ファイルの書き出し(os.WriteFile)
はじめに
今回は os
パッケージの WriteFile
関数を使ってみます。
検証環境
$ uname -moi
x86_64 MacBookPro16,1 Darwin
$ go version
go version go1.16.3 darwin/amd64
インターフェイス
func WriteFile(name string, data []byte, perm FileMode) error
説明
ファイル名を受け取り、そのファイルにデータを書き込みます。
もしファイルが存在しなかった場合には、事前に指定されたパーミッションのファイルを作成します。
正常終了時は error
の戻り値が nil
となります。
サンプルコード
main.go
package main
import (
"log"
"os"
)
func main() {
text := "Hello. Here is genzouw."
err := os.WriteFile("/tmp/test.txt", []byte(text), 0764)
if err != nil {
log.Fatal(err)
}
}
実行
$ ls -l /tmp/test.txt
"/tmp/test.txt": No such file or directory (os error 2)
$ go run ./main.go
$ ls -l /tmp/test.txt
.rwxr--r-- 23 genzouw 4 5 16:52 /tmp/test.txt*
$ cat /tmp/test.txt
Hello. Here is genzouw.
ひとこと
ファイルの書き込みもできるようになりました。
文字列をそのまま書き込めず、一度 []byte
のようにスライスに変換しないといけないのが若干面倒です。
ディスカッション
コメント一覧
まだ、コメントがありません