NO IMAGE

【Go】パーミッションエラー対応記録【os.Create()】

NO IMAGE

Contents

os.Create() でpermission errorに遭遇

os.Create()でファイル作成するコードで出会ったパーミッションエラーに関するメモです。

  • エラー起きたコード
package mainimport ("log""os")func main() {fp, err := os.Create("hoge.txt")if err != nil {log.Println("[os.Create]:", err)}defer fp.Close()fp.WriteString("hogehoge")}
$ go run main.go2021/09/27 17:49:23 [os.Create]:  open hoge.txt: permission denied

ファイルのパーミッションエラーかな?と思ったものの、よくよく調べるとディレクトリのパーミッションが原因のようでした。

package mainimport ("log""os")func main() {  workDir, _ := os.Getwd()os.Chmod(workDir, 0777)fp, err := os.Create("hoge.txt")if err != nil {log.Println("[os.Create]", err)}defer fp.Close()fp.WriteString("hogehoge")}

NO IMAGE
最新情報をチェックしよう!