【Ruby3.x】CSV::readlines()メソッドの使い方
readlinesメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
readlinesメソッドは、RubyのCSVモジュールに属し、カンマ区切り値(CSV)形式のデータを行ごとに読み込み、その内容を二次元配列として取得するために実行するメソッドです。主にCSVファイルやCSV形式の文字列からデータを一括で読み込む際に使用されます。
このメソッドは、引数としてCSVファイルのパス(文字列)や、IOオブジェクト(例:File.openで開いたファイルオブジェクトやStringIOオブジェクト)を受け取ることができます。渡されたデータソースからCSV形式の情報を解析し、各行を一つの配列として、さらにその行の各フィールド(項目)を要素とする文字列の配列に変換します。最終的に、読み込んだすべての行の配列を要素とする配列を返します。
例えば、「名前,年齢」のようなCSVデータがあれば、各行は["名前", "年齢"]という配列になり、それが複数集まって[["名前1", "年齢1"], ["名前2", "年齢2"]]のような形式で戻り値として提供されます。ダブルクォートで囲まれたフィールド内のカンマや改行、エスケープ処理などもCSV標準に従って適切に処理されるため、複雑なCSVデータでも正確にパースすることが可能です。システム内でCSVファイルを一括で処理したり、データを読み込んでメモリ上に展開したりする場合に非常に役立ちます。
構文(syntax)
1require 'csv' 2 3CSV.readlines('path/to/file.csv')
引数(parameters)
path, **options
- path: 読み込むCSVファイルのパスを指定する文字列
- options: CSVの読み込みに関するオプションを指定するハッシュ
戻り値(return)
Array<Array<String>>
CSVファイルから読み込んだ各行を要素とする配列を返します。各行はさらに、その行をカンマ(または指定された区切り文字)で分割した文字列の配列として表現されます。