RubyのFileクラスは、ファイルの読み書きを行うための基本的かつ強力なクラスです。以下では、Fileクラスを使った基本的な読み書きの方法について詳しく解説します。
1. ファイルを開く
Rubyでは、File.openメソッドを使ってファイルを開くことができます。開く際には「モード」を指定して、読み込み用なのか書き込み用なのかを設定します。
主なモードの例
| モード | 意味 |
|---|---|
"r" |
読み込み専用(既存ファイル) |
"w" |
書き込み専用(上書き) |
"a" |
書き込み専用(追記) |
"r+" |
読み書き(既存ファイル) |
"w+" |
読み書き(上書き) |
"a+" |
読み書き(追記) |
2. ファイルの読み込み
方法1:File.read(すべてを一度に読み込む)
File.read(すべてを一度に読み込む)
方法2:File.openとブロックを使って1行ずつ読み込む
File.openとブロックを使って1行ずつ読み込む
File.openにブロックを渡すと、ファイルは自動的に閉じられます。
3. ファイルへの書き込み
方法1:File.write(全内容を一度に書き込む)
File.write(全内容を一度に書き込む)
※ 既存の内容は上書きされます。
方法2:File.openとブロックで1行ずつ書き込む
File.openとブロックで1行ずつ書き込む
方法3:追記モードで書き込む
4. ファイルが存在するか確認
5. ファイルを明示的に閉じる(ブロックを使わない場合)
ブロックを使うことが推奨される理由は、例外が発生したときでも自動的にcloseされるため、安全だからです。
まとめ
RubyのFileクラスを使えば、シンプルな構文で強力なファイル操作が可能です。以下の点を押さえると良いでしょう。
-
読み込みには
"r"モード、書き込みには"w"や"a"モードを使用する。 -
ブロック付きの
File.openを使うとファイルを安全に開閉できる。 -
File.readやFile.writeは一括操作に便利。 -
ファイル存在確認やファイルサイズ取得などの補助的メソッドも豊富。
生成日:2025/05/03