Rubyでファイルを作成する方法
概要
新しいファイルを作成しようとしていますが、期待どおりに動作していないようです。私が試したことは次のとおりです。
File.new "out.txt"
File.open "out.txt"
File.new "out.txt","w"
File.open "out.txt","w"
私がオンラインで読んだすべてによると、それらはすべて機能するはずですが、どれも次のような結果になります。
ERRNO::ENOENT: No such file or directory - out.txt
これは、Ruby スクリプトだけでなく IRB からも発生します。私には何が欠けているのでしょうか?
解決策
使用:
File.open("out.txt", [your-option-string]) do |f|
f.write("write your stuff here")
end
オプションは次のとおりです。
あなたの場合、「w」が望ましいです。
または、次のようにすることもできます。
out_file = File.new("out.txt", "w")
#...
out_file.puts("write your stuff here")
#...
out_file.close
…しかし、これには close の呼び出しを忘れるリスクがあります (例外が発生した場合や、早期にリターンした場合など)。