- ベストアンサー
Rubyのファイル上書き
rubyの初心者です。 ファイルの上書きをしたいのですが、File.open(filename,"a") ブロック を使うとファイルの一番下に文章が追加されてしまいます。 元のファイルの上にデータを追加したいと考えています。 今はファイルを配列にまとめて、データを加えて並び替えてとごちゃごちゃしたやり方になってしまっています。 なにかスマートな方法があればご教授ください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
ファイルの先頭に追加する手段はありません。 一度全部読んで、追加したいデータと合わせて、元のファイルに上書きして下さい。 adddata = "追加したいデータ" olddata = open("ファイル名"){|f| f.read} open("ファイル名","w"){|f| f.print(adddata + olddata)}