【Ruby3.x】readlines()関数の使い方
readlines関数の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
readlines関数は、標準入力や指定されたファイルから全ての行を読み込み、それぞれの行を要素とする文字列の配列として返す関数です。この関数は主に、プログラムが外部からデータを受け取る際に利用されます。引数を指定しない場合、プログラムが起動した際に標準入力からデータを読み込みます。例えば、コマンドラインでパイプ(|)を通じて他のプログラムの出力を受け取る際などに有効です。また、引数にファイルパスを示す文字列を指定することで、そのファイルの内容を一度にすべて読み込むこともできます。読み込まれた各行の文字列には、通常、行末の改行文字(\n)が含まれます。しかし、chomp: trueというキーワード引数を指定することで、この改行文字を取り除いた状態で取得することが可能です。この機能は、ファイルの内容を一行ずつ処理する際や、ファイル全体をメモリ上に展開して操作する際に非常に便利です。ただし、非常に大きなファイルを読み込む際には、大量のメモリを消費する可能性があるため、メモリ使用量に注意が必要です。readlines関数は、シンプルな記述でファイルや標準入力からまとめてデータを取得できるため、初心者の方でも扱いやすい関数です。
構文(syntax)
1lines = readlines("path/to/your/file.txt")
引数(parameters)
name = nil, sep = $/, limit = nil, chomp: false, encoding: nil, **options
- name = nil: 読み込むファイル名を指定します。nil の場合は標準入力から読み込みます。
- sep = $/ : 区切り文字を指定します。デフォルトは改行文字 ($/) です。
- limit = nil: 読み込む行数を指定します。nil の場合は全行を読み込みます。
- chomp: false: true の場合、各行の末尾の改行文字を削除します。
- encoding: nil: ファイルのエンコーディングを指定します。nil の場合はシステムデフォルトを使用します。
- **options: その他のオプションを指定します。
戻り値(return)
Array<String>
readlinesメソッドは、ファイルから読み込んだ各行を文字列の配列として返します。