ファイルを読んだり書いたり。
ファイルの読み書きをしてみる。やっとこさ実用的な勉強になって嬉しい。ここのところ、ちょっとだけわかってきたので勉強をしているとドラクエのレベルアップ音が鳴り響くことが多いので楽しい。
スクリプトと同じディレクトリに
hoge huga hage
こんな内容のテキストファイルを作成しhoge.txtと保存し、これを読み込んでみる。
open("./hoge.txt", "r") do |file| while line = file.gets p line.chomp end end
結果。
hoge huga hage
||で囲まれたfileにはストリームが格納されるのか、気になるので確かめてみる。
open("./hoge.txt", "r") do |file| p file end
結果。
#<File:./hoge.txt>
Fileクラスのインスタンスということか?とりあえずまだ知らなくても大丈夫だろうから置いておく。
Closeはしなくてもendを抜けると勝手にやってくれるらしい。ちょっと気持ち悪いけど、きっと慣れれば快適なのだろう。あ、C#にあるusingみたいなものか。
続いて書き込んでみる。hoge.txtにhujiと追記。
open("./hoge.txt", "a") do |file| file.puts "huji" end
hoge.txtの中身は。
hoge huga hage huji
となる。
openの第2引数はオプション、各種取り揃えられております、ご主人様。
オプション | 機能 |
---|---|
r | 読み込みモード |
r+ | 読み書きモード、ファイルを読み込む場合は先頭から読み込む |
w | 書き込みモード、同名のファイルが存在する場合は0バイトとなる |
w+ | 読み書きモード、同名のファイルが存在する場合は0バイトとなる |
a | 追記モード、指定したファイルがなければ新規作成 |
a+ | 読み書きモード、ファイルが存在すれば追記、存在しなければ新規作成 |
- 作者: 広瀬雄二
- 出版社/メーカー: 技術評論社
- 発売日: 2006/01/13
- メディア: 単行本(ソフトカバー)
- クリック: 9回
- この商品を含むブログ (41件) を見る