Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > csvライブラリ > CSV::Readerクラス
class CSV::Reader
クラスの継承リスト: CSV::Reader < Enumerable < Object < Kernel < BasicObject
Abstract
CSVの読み込み時のベースとなるクラス
特異メソッド
create(str_or_readable[, fs = ','[, rs = nil]]) -> CSV::StringReader
-
CSVデータを解析して、解析結果を格納したCSV::StringReaderを返します。
- [PARAM] str_or_readable:
- パースする対象の文字列
- [PARAM] fs:
- フィールドセパレータの指定。 nil (デフォルト) で ',' をセパレータとします。
- [PARAM] rs:
- 行区切り文字の指定。nil (デフォルト) で CrLf / Lf。 Cr を行区切りとしたい場合は ?\r を渡します。
parse(str_or_readable[, fs = ','[, rs = nil]]) -> CSV::StringReader
parse(str_or_readable[, fs = ','[, rs = nil]]) {|row| ... } -> nil
-
CSVデータを解析して、CSV::StringReaderを返します。 ブロックに渡された場合はパースした結果を1列づつArrayとして渡します。
- [PARAM] str_or_readable:
- パースする対象の文字列
- [PARAM] fs:
- フィールドセパレータの指定。 nil (デフォルト) で ',' をセパレータとします。
- [PARAM] rs:
- 行区切り文字の指定。nil (デフォルト) で CrLf / Lf。 Cr を行区切りとしたい場合は ?\r を渡します。
注意:
パース時に""(空文字)と値なしを区別します。 例えば、a, "", , b の行をパースした場合には ["a", "", nil, "b"] の配列を返します。
例:
CSV::Reader.parse("1,2,3\nA,B,C\n"){|row| p row }
インスタンスメソッド
close -> nil
-
内部的にterminateメソッドを呼び出します。
each {|row| ... } -> nil
-
自身から 1 行ずつ読み込み、それを引数として与えられたブロックを実行します。
shift -> Array
-
CSVをパースした結果から1行分を取り除き、取り除いた1行を配列として返します。 shiftは破壊的メソッドです。
注意:
パース時に""(空文字)と値なしを区別します。 例えば、a, "", , b の行をパースした場合には ["a", "", nil, "b"] の配列を返します。
privateメソッド
get_row(row) -> ()
-
本メソッドは再定義 or サブクラスで定義されることを想定されています。 再定義せずに呼び出した場合は例外NotImplementedErrorが発生します。
initialize(dev) -> ()
-
本メソッドは再定義 or サブクラスで定義されることを想定されています。 再定義せずに呼び出した場合は例外RuntimeErrorが発生します。
terminate -> ()
-
終了時処理を行う場合に再定義してください。