![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
memo.txtの中に含まれている"俺の飯"という文字列を"私のごはん"というふうに置換を行いたいのですが、
現在のやり方だとファイルを開いて1行ずつ読み込んで新しいファイルに文字列を書きだしており
読み込んだ際、置換対象の文字列があった場合に置換して書きだしておりますが
このやり方だとどうしても新規ファイルを出力しなければいけません。
これを新規ファイルを作らずにmemo.txtの中身だけを書き換えるようにするには
どのような処理にすれば良いのでしょうか?
何卒宜しくお願い致します。
---- sample.rb
require 'rubygems'
open("memo.txt"){ |f|
open("after_memo.txt","w"){ |o|
while line = f.gets
line.gsub!("俺の飯", "私のごはん")
o.puts line
end
}
}
-- memo.txt
俺の飯はリーズナブル!
俺の飯美味しそう!
No.1ベストアンサー
- 回答日時:
最も単純なのは、ファイルの内容すべてを IO.readlines などで変数に突っ込んで、置換した結果を memo.txt に上書き。
No.2
- 回答日時:
コマンドラインで -iオプションを使えば良いと思います。
% ruby -i -pe "$_.gsub! '俺の飯', '私のごはん'" memo.txt
バックアップを残したければ -iに引数を渡して、
% ruby -i~ ...
% ruby -i.bak ...
とか。前者はEmacsのように memo.txt~、後者は memo.txt.bak とバックアップされます。
コマンドラインでなければ、fileutilsライブラリのmvの処理をopenのブロック後に
付け加えれば良いと思います。
require 'fileutils'
...
open(...){...}
FileUtils.mv 'after_memo.txt', 'memo.txt'
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/03 13:18
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Visual Basic(VBA) エクセルVBAでメールの自動作成の モジュールを作ったのですが、txtファイルから読み込んだ本文が文 2 2022/07/20 15:01
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ処理 特定の文字以降を...
-
VBA テキストボックスを選択状...
-
型の値をDataGridViewセルに変換...
-
findを使うのか?
-
言語[RUBY]を用いて、特定列を...
-
HTMLについて
-
文字列を引数にしたがって置換...
-
pythonでリストをCSVに出力する...
-
【ExcelVBA】300万件越えCSVか...
-
VBAでcsvファイルもシートもあ...
-
SQLファイルの読み込み
-
pycharmへのpysamインストール...
-
fortranでデータの抜き出しをし...
-
Fortran:列数の分からないデー...
-
ダブルコーテーション付きでCSV...
-
Ruby 正規表現による文字列取得
-
ファイルの切り出しプログラム...
-
Excelマクロ 空白セルを無視し...
-
タグ初心者
-
EXCEL→CSV保存時のダブルクォー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理 特定の文字以降を...
-
パイソンでテキストファイルが...
-
VBA テキストボックスを選択状...
-
[コンパイルエラー 修飾子が不...
-
SQLでテキストボックスの文字を...
-
Access VBA エラー2448について
-
verilog HDLについての質問です...
-
teratermで、ファイル名をinput...
-
分数の計算のプログラミングです。
-
バッチ for /f 空白、スペース...
-
MS-DOSバッチファイルコマンド...
-
アスキー変換 と 逆変換について
-
TEXTファイルを日付・時刻で保存。
-
型の値をDataGridViewセルに変換...
-
■PukiWikiの凍結解除方法を教え...
-
ruby テキストファイル書き出し...
-
フォームのResizeイベントについて
-
プログラミングによるオセロゲ...
-
バッチファイル フォルダ名をフ...
-
文字コードを指定して・・
おすすめ情報