るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
22件ヒット [1-22件を表示] (0.038秒)

別のキーワード

  1. erb u
  2. util u
  3. matrix u
  4. encoding koi8_u
  5. _builtin koi8_u

クラス

キーワード

検索結果

CSV#flush -> self (18310.0)

IO#flush に委譲します。

IO#flush に委譲します。

CSV#force_quotes? -> bool (18310.0)

出力される全てのフィールドがクオートされる場合は、真を返します。

...]{
require "csv"

rows = [["header1", "header2"], ["row1_1,", "row1_2"]]
result = CSV.generate(force_quotes: false) do |csv|
rows.each { |row| csv << row }
csv
.force_quotes? # => false
end
print result

# => header1,header2
# "row1_1,",row1_2
//}

//emlist[例][ruby]{
require "csv"

rows = [[...
..."header1", "header2"], ["row1_1,", "row1_2"]]
result = CSV.generate(force_quotes: true) do |csv|
rows.each { |row| csv << row }
csv
.force_quotes? # => true
end
print result

# => true
# => "header1","header2"
# "row1_1,","row1_2"
//}

@see CSV.new...

CSV#quote_char -> String (18310.0)

フィールドをクオートするのに使用する文字列を返します。

...フィールドをクオートするのに使用する文字列を返します。

//emlist[例][ruby]{
require "csv"

csv
= CSV.new("header1,header2\nrow1_1,row1_2", quote_char: "'")
csv
.quote_char # => "'"
//}

@see CSV.new...

CSV#return_headers? -> bool (18310.0)

ヘッダを返す場合は、真を返します。 そうでない場合は、偽を返します。

...]{
require "csv"

csv
= CSV.new("header1,header2\nrow1_1,row1_2", headers: true, return_headers: false)
csv
.return_headers? # => false
csv
.shift # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">

csv
= CSV.new("header1,header2\nrow1_1,row1_2", headers: true, return_headers: true)
csv
.return_hea...
...ders? # => true
csv
.shift # => #<CSV::Row "header1":"header1" "header2":"header2">
//}

@see CSV.new...

CSV#truncate(path, length) -> 0 (18310.0)

File#truncate に委譲します。

File#truncate に委譲します。


@see File#truncate

絞り込み条件を変える

CSV#unconverted_fields? -> bool (18310.0)

パースした結果が unconverted_fields というメソッドを持つ場合に真を返します。 そうでない場合は、偽を返します。

...ます。


//emlist[例][ruby]{
require "csv"

csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10")
csv
.unconverted_fields? # => nil
csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10", unconverted_fields: false)
csv
.unconverted_fields? # => false
csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10", h...
..._fields: true)
csv.unconverted_fields? # => true
csv
.convert(:date)
row = csv.readline
row.fields # => [#<Date: 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)>, #<Date: 2018-07-10 ((2458310j,0s,0n),+0s,2299161j)>]
row.unconverted_fields # => ["2018-07-09", "2018-07-10"]
//}

@see CSV.new...

CSV::Row#push(*args) -> self (18310.0)

複数のフィールドを追加するためのショートカットです。

...複数のフィールドを追加するためのショートカットです。

以下とおなじです:
args.each { |arg| csv_row << arg }

@return メソッドチェーンのために自身を返します。...

CSV::Table#push(*rows) -> self (18310.0)

複数の行を追加するためのショートカットです。

...//}

@param rows CSV::Row のインスタンスか配列を指定します。

//emlist[例][ruby]{
require 'csv'
csv
= CSV.new("a,b,c\n1,2,3", headers: true)
table = csv.read
rows = [
CSV
::Row.new(table.headers, [4, 5, 6]),
[7, 8, 9]
]

table.push(*rows)
p table[0..2]
# => [#<CSV::Row "a":"1" "...
...b":"2" "c":"3">, #<CSV::Row "a":4 "b":5 "c":6>, #<CSV::Row "a":7 "b":8 "c":9>]
//}

@see CSV::Table#<<...

CSV::Table#values_at(indices_or_headers) -> Array (18310.0)

デフォルトのミックスモードでは、インデックスのリストを与えると行単位の 参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行 単位の参照では、返り値は行ごとの配列を要素に持つ配列です。

...たい場合は CSV::Table#by_col!,
CSV
::Table#by_row! を使用してください。

アクセスモードを混在させることはできません。

//emlist[例 ロウモード][ruby]{
require "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["heade...
...["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.values_at(1) # => [#<CSV::Row "header1":"row2_1" "header2":"row2_2">]
//}

//emlist[例 カラムモード][ruby]{
require "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header...
...2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.by_col!
table.values_at(1) # => [["row1_2"], ["row2_2"]]
//}

@see CSV::Table#by_col!, CSV::Table#by_row!...

CSV#puts(row) -> self (9310.0)

自身に row を追加します。

...m row 配列か CSV::Row のインスタンスを指定します。
CSV
::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。

//emlist[例 配列を指定][ruby]{
require "csv"

File.write("test.csv", <<CSV)
id,first name...
...i,adachi,21
CSV

CSV
.open("test.csv", "a") do |csv|
csv
.puts(["5", "saburo", "kondo", "34"])
end

print File.read("test.csv")
# => id,first name,last name,age
# 1,taro,tanaka,20
# 2,jiro,suzuki,18
# 3,ami,sato,19
# 4,yumi,adachi,21
# 5,saburo,kondo,34
//}

//emlist[例 CSV::Row を...
...ruby]{
require "csv"

File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV

CSV
.open("test.csv", "a") do |csv|
row = CSV::Row.new(["id", "first name", "last name", "age"], ["5", "saburo", "kondo", "34"])
csv
.add_row(row)
en...

絞り込み条件を変える

CSV::Row#include?(name) -> bool (9310.0)

自身のヘッダに与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。

...い場合は偽を返します。

@param name この行のヘッダに含まれているかどうか調べたい値を指定します。

//emlist[例][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2"], [1, 2])
row.header?("header1") # => true
row.header?("header3") # => false
//}...

CSV::Row#values_at(*headers_and_or_indices) -> Array (9310.0)

与えられた引数に対応する値の配列を返します。

...与えられた引数に対応する値の配列を返します。

要素の探索に CSV::Row.field を使用しています。

@param headers_and_or_indices ヘッダの名前かインデックスか Range
のインスタンスか第 1 要素がヘッダの名前...
...るこ
とができます。

@return 引数を与えなかった場合は全ての要素を返します。

require 'csv'
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]...

CSV#headers -> Array | true | nil (310.0)

nil を返した場合は、ヘッダは使用されません。 真を返した場合は、ヘッダを使用するが、まだ読み込まれていません。 配列を返した場合は、ヘッダは既に読み込まれています。

...は既に読み込まれています。

//emlist[例][ruby]{
require "csv"

csv
= CSV.new("header1,header2\nrow1_1,row1_2")
csv
.headers # => nil
csv
= CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv
.headers # => true
csv
.read
csv
.headers # =>["header1", "header2"]
//}

@see CSV.new...

CSV::Row#[](header_or_index, minimum_index = 0) -> object | nil (310.0)

ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。

...の名前を探します。
重複しているヘッダがある場合に便利です。

//emlist[例][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])

row.field("header1") # => "row1_1"
row.field("header2") # => "row1_2"
row["header1"]...

CSV::Row#[]=(header, offset, value) (310.0)

ヘッダの名前でフィールドを探し、値をセットします。

...トします。

@param header ヘッダの名前を指定します。

@param offset このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。

@param value 値を指定します。

@see CSV::Row#field...

絞り込み条件を変える

CSV::Row#[]=(header_or_index, value) (310.0)

ヘッダの名前かインデックスでフィールドを探し、値をセットします。

...前で指定][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])

row["header1"] # => "row1_1"
row["header1"] = "updated"
row["header1"] # => "updated"
//}

//emlist[例 ヘッダの index で指定][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2"...
..."csv"

row = CSV::Row.new(["header1", "header2", "header1"], ["row1_1", "row1_2", "row1_3"])

row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2" "header1":"row1_3">
row["header1", 1] = "updated"
row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2" "header1":"updated">
//}


@see CSV::...

CSV::Row#delete(header_or_index, minimum_index = 0) -> [object, object] | nil (310.0)

ヘッダの名前かインデックスで行からフィールドを削除するために使用します。

...by]{
require "csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])

row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
row.delete("header1")
row # => #<CSV::Row "header2":"row1_2">
//}

//emlist[例 ヘッダの index で指定][ruby]{
require "csv"

row = CSV::Row.new(["he...
...w # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
row.delete(0)
row # => #<CSV::Row "header2":"row1_2">
//}

//emlist[例 ヘッダの名前と offset で指定][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2", "header1"], ["row1_1", "row1_2", "row1_3"])

row # => #<CSV::Row "h...
...eader1":"row1_1" "header2":"row1_2" "header1":"row1_3">
row.delete("header1", 1)
row # => #<CSV::Row "header1":"row1_1" "header2":"row1_2">
//}

@see CSV::Row#field...

CSV::Row#field(header_or_index, minimum_index = 0) -> object | nil (310.0)

ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。

...の名前を探します。
重複しているヘッダがある場合に便利です。

//emlist[例][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])

row.field("header1") # => "row1_1"
row.field("header2") # => "row1_2"
row["header1"]...

CSV::Row#index(header, minimum_index = 0) -> Integer (310.0)

与えられたヘッダの名前に対応するインデックスを返します。

...の名前を探します。
重複しているヘッダがある場合に便利です。

//emlist[例][ruby]{
require "csv"

row = CSV::Row.new(["header1", "header2", "header1"], [1, 2, 3])
row.index("header1") # => 0
row.index("header1", 1) # => 2
//}

@see CSV::Row#field...

CSV::Table#[]=(index_or_header, value) (310.0)

ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。

...で動作します。

このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。

行には配列か CSV::Row のインスタンスを指定します。

列に値...
...][ruby]{
require "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row3 = CSV::Row.new(["header1", "header2"], ["row3_1", "row3_2"])
table = CSV::Table.new([row1, row2])
table[0] # => #<CSV::Row "header1":"row1_...
...1" "header2":"row1_2">
table[1] # => #<CSV::Row "header1":"row2_1" "header2":"row2_2">
table[1] = row3
table[1] # => #<CSV::Row "header1":"row3_1" "header2":"row3_2">
table.by_col!
table[0] # => ["row1_1", "row3_1"]
table[1] # => ["row1_2", "row3_2"]
table[1] = ["row1_2", "row2_2"]
table[1] # => ["r...

絞り込み条件を変える

CSV::Table#delete_if {|column_name, values| ... } -> self (310.0)

ブロックを評価した結果が真である行か列を削除します。

...mlist[例 ロウモード][ruby]{
require "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "valid"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "invalid"])
row3 = CSV::Row.new(["header1", "header2"], ["row3_1", "valid"])
table = CSV::Table.new([row1, row2, row3])
table.delet...
...", "valid"]]
//}

//emlist[例 カラムモード][ruby]{
require "csv"
row1 = CSV::Row.new(["id", "name"], [1, "tanaka"])
row2 = CSV::Row.new(["id", "name"], [2, "suzuki"])
row3 = CSV::Row.new(["id", "name"], [3, "sato"])
table = CSV::Table.new([row1, row2, row3])
table.by_col!
table.delete_if { |c...
...olumn_name, values| column_name == "id" }
table.to_a # => [["name"], ["tanaka"], ["suzuki"], ["sato"]]
//}

@see CSV::Table#delete...

CSV::Table#each {|column_name, values| ... } -> self (310.0)

デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し ます。

...equire "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row3 = CSV::Row.new(["header1", "header2"], ["row3_1", "row3_2"])
table = CSV::Table.new([row1, row2, row3])
table.each { |row| p row }

# => #<CSV::Row "...
..._1" "header2":"row1_2">
# => #<CSV::Row "header1":"row2_1" "header2":"row2_2">
# => #<CSV::Row "header1":"row3_1" "header2":"row3_2">
//}

//emlist[例 カラムモード][ruby]{
require "csv"

row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2...
..."], ["row2_1", "row2_2"])
row3 = CSV::Row.new(["header1", "header2"], ["row3_1", "row3_2"])
table = CSV::Table.new([row1, row2, row3])
table.by_col!
table.each { |column_name, values| print column_name, values, "\n" }

# => header1["row1_1", "row2_1", "row3_1"]
# => header2["row1_2", "row2_2", "row3...