LoginSignup
17
13

More than 3 years have passed since last update.

【Ruby】ファイル読み込みメソッドまとめ

Last updated at Posted at 2018-06-24

概要

Rubyではデータ読み込みの際に使用するメソッドによって、ファイル末尾に到達した時の振る舞い空ファイルを開いた時の振る舞いが異なります。
各メソッドの動きとEOF・空ファイルに対する振る舞いの違いについてまとめました。

IOクラスのファイルを読み込むメソッド・振る舞い一覧

メソッド名 処理 EOF・空ファイルに対する振る舞い
read IOから内容を読み込む。引数で読み込みの長さの指定が可能。 空ファイルの場合は「""」が返る。引数で読み込みの長さが指定されている場合はnilが返る。
readlines ファイルを全て読み込んで、行ごとに要素に分けた配列にして返す。 空ファイルの場合は空配列([])が返る。
each/foreach 指定されたファイルを開き、各行ごとにブロックに渡す。 与えられたブロックが実行されない。
each_byte 与えられたブロックに1バイトずつ整数として渡す。 EOFであれば何もしない。
gets IOオブジェクトから1行だけ読み込む。 nilを返す。
readline IOオブジェクトから1行だけ読み込む。 EOFErrorエラーが発生する。
getc IOオブジェクトから1文字読み込む。 nilを返す。
readchar IOオブジェクトから1文字読み込む。 EOFErrorエラーが発生する。
getbyte IOオブジェクトから1バイト読み込んで整数として返す。 nilを返す。
readbyte IOオブジェクトから1バイト読み込んで整数として返す。 EOFErrorエラーが発生する。
17
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
13