Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > csvライブラリ > CSV::Rowクラス
クラスの継承リスト: CSV::Row
< Enumerable
< Object
< Kernel
< BasicObject
extend: Forwardable
CSV::Row は配列やハッシュのように似ています。
配列のようにフィールドの順序を保持していて、複製する事もできます。 また、ハッシュのように名前でフィールドにアクセスする事もできます。
ヘッダ行の処理が有効である場合は CSV から返される全ての行はこのクラスのインスタンスです。
以下のメソッドを Array に委譲します。
new(headers, fields, header_row = false) -> CSV::Row
[permalink][rdoc]自身を初期化します。
一方の配列が他方の配列よりも短い場合、不足しているところは nil になります。
[SEE_ALSO] CSV::Row#header_row?, CSV::Row#field_row?
self << arg -> self
[permalink][rdoc]自身に与えられたデータを追加します。
self == other -> bool
[permalink][rdoc]自身が other と同じヘッダやフィールドを持つ場合に真を返します。 そうでない場合は偽を返します。
field(header_or_index, minimum_index = 0) -> object | nil
[permalink][rdoc]self[header_or_index, minimum_index = 0] -> object | nil
ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。
self[header_or_index] = value
[permalink][rdoc]ヘッダの名前かインデックスでフィールドを探し、値をセットします。
末尾より後ろのインデックスを指定すると、ヘッダの名前は nil になります。 存在しないヘッダを指定すると、新しい要素を末尾に追加します。
[SEE_ALSO] CSV::Row#field
self[header, offset] = value
[permalink][rdoc]ヘッダの名前でフィールドを探し、値をセットします。
[SEE_ALSO] CSV::Row#field
delete(header_or_index, minimum_index = 0) -> [object, object] | nil
[permalink][rdoc]ヘッダの名前かインデックスで行からフィールドを削除するために使用します。
[SEE_ALSO] CSV::Row#field
delete_if {|header, field| ... } -> self
[permalink][rdoc]与えられたブロックにヘッダとフィールドのペアを渡して評価します。 評価した結果が真である場合に、その組を自身から削除します。
each {|header, field| ... } -> self
[permalink][rdoc]与えられたブロックにヘッダとフィールドの組を渡して評価します。
empty? -> bool
[permalink][rdoc]内部で保持している @row へ委譲します。
field?(data) -> bool
[permalink][rdoc]自身に与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
field_row? -> bool
[permalink][rdoc]フィールド行であれば真を返します。そうでなければ偽を返します。
fields(*headers_and_or_indices) -> Array
[permalink][rdoc]values_at(*headers_and_or_indices) -> Array
与えられた引数に対応する値の配列を返します。
要素の探索に CSV::Row.field を使用しています。
csv = CSV.new("a,b,c\n1,2,3", headers: true) table = csv.read row = table.first row.values_at("a", 1, 2..3) # => ["1", "2", "3", nil]
header?(name) -> bool
[permalink][rdoc]include?(name) -> bool
自身のヘッダに与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
header_row? -> bool
[permalink][rdoc]ヘッダ行であれば真を返します。そうでなければ偽を返します。
headers -> Array
[permalink][rdoc]この行のヘッダのリストを返します。
index(header, minimum_index = 0) -> Fixnum
[permalink][rdoc]与えられたヘッダの名前に対応するインデックスを返します。
[SEE_ALSO] CSV::Row#field
inspect -> String
[permalink][rdoc]ASCII 互換であるエンコーディングの文字列で自身の情報を返します。
length -> Fixnum
[permalink][rdoc]size -> Fixnum
Array#length, Array#size に委譲します。
push(*args) -> self
[permalink][rdoc]複数のフィールドを追加するためのショートカットです。
以下とおなじです:
args.each { |arg| csv_row << arg }
row -> Array
[permalink][rdoc]同値性を比較するために使用する内部的なデータです。
to_csv -> String
[permalink][rdoc]to_s -> String
自身を CSV な文字列として返します。ヘッダは使用しません。
to_hash -> Hash
[permalink][rdoc]自身をシンプルなハッシュに変換します。
フィールドの順序は無視されます。 重複したフィールドは削除されます。