Go言語でファイルが存在するかどうかを確認するには、os.Stat関数を使用します。
csvファイルや画像ファイルなどの処理に使える処理になります。
os.Stat関数でファイルの存在確認をする方法
以下、サンプルコードです。戻り値のエラーを補足するシンプルな方法です。
package main
import (
"fmt"
"os"
)
func main() {
filename := "myfile.txt"
if _, err := os.Stat(filename); err == nil {
fmt.Println("ファイルは存在します")
} else {
fmt.Println("ファイルは存在しません")
}
}
かなりシンプルですね。
この例ではまず確認したいファイル名を定義します(myfile.txt
)。次にos.Stat
関数を使用してファイルに関する情報を取得します。ファイルが存在する場合はos.Stat
関数はnil
を返します。
これを補足してif文で処理します。
なお、カレントディレクトリにないファイルの存在確認をするにはディレクトリパスから必要です。
パスの取得については以下の記事をご確認ください。
Go言語で現在実行中のファイルのディレクトリ名とフルパスを取得する方法