###やりたいこと
ファイル作成をする際、ファイル名を数字にして
「1.txt」「2.txt」「3.txt」・・・
と、なるようにファイル作成を実行する度に自動的にファイル名の数字がカウントアップしていくシステムを作りたいです。
###最初に試したこと
go
1func main() { 2 for i := 1; i <= 5; i++ { 3 a := fmt.Sprintf("%d.txt", i) 4 5 file, err := os.OpenFile(a, os.O_RDWR|os.O_CREATE, 0666) 6 if err != nil { 7 log.Fatal(err) 8 } 9 defer file.Close() 10 } 11}
カウントアップさせるということで安易にfor文を使いましたが、当然一度に5つのファイルが作成されてしまい望んでいる挙動ではありません。
#####次に
【1】数字が1番大きいファイル名をint型で取得
↓
【2】取得した数字に+1をする
↓
【3】+1した数字を新規ファイル名に代入する
という方法を考えましたが、【1】の1番大きい数字のファイル名の取得方法が解らず、調べても見つけることができませんでした。
このようなシステムを作る際、自分が考えた方法は間違っているのか。
間違っていた場合、どのように考えるのが最適なのか。
ご教示いただきたいです。
回答1件
あなたの回答
tips
プレビュー