るりまサーチ (Ruby 2.1.0)

最速Rubyリファレンスマニュアル検索!
27件ヒット [1-27件を表示] (0.025秒)
トップページ > クエリ:read[x] > バージョン:2.1.0[x] > クラス:CSV[x]

別のキーワード

  1. _builtin read
  2. stringio read
  3. io read
  4. csv read
  5. tuple read

ライブラリ

キーワード

検索結果

CSV#read -> [Array] | CSV::Table (54379.0)

残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

...い値が指定されていた場合は CSV::Table オブジェクトを返します。

データソースは読み込み用にオープンされている必要があります。

//emlist[例 headers: false][ruby]{
require "csv"

csv
= CSV.new(DATA.read)
csv
.read
# => [["header1", "header2"], ["ro...
..._1", "row1_2"], ["row2_1", "row2_2"]]

__END__
header1,header2
row1_1,row1_2
row2_1,row2_2
//}

//emlist[例 headers: true][ruby]{
require "csv"

csv
= CSV.new(DATA.read, headers: true)
csv
.read
# => #<CSV::Table mode:col_or_row row_count:3>

__END__
header1,header2
row1_1,row1_2
row2_1,row2_2
//}...

CSV.read(path, options = Hash.new) -> [Array] | CSV::Table (54343.0)

CSV ファイルを配列の配列にするために使います。 headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。

...
CSV
ファイルを配列の配列にするために使います。
headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。

@param path CSV ファイルのパスを指定します。

@param options CSV.new のオプションと同じオプ...
...しなければなりません。

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

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


pp CSV.read("test.csv")

# => [["id", "first name", "last name", "age"],
# ["1", "tar...
.../}

//emlist[例][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


table = CSV.read("test.csv", headers: true)
p table.class # => CSV::Table
p table[0] # => #<CSV::Row "id":"1" "first name":"taro"...

CSV#readlines -> [Array] | CSV::Table (18379.0)

残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。

...い値が指定されていた場合は CSV::Table オブジェクトを返します。

データソースは読み込み用にオープンされている必要があります。

//emlist[例 headers: false][ruby]{
require "csv"

csv
= CSV.new(DATA.read)
csv
.read
# => [["header1", "header2"], ["ro...
..._1", "row1_2"], ["row2_1", "row2_2"]]

__END__
header1,header2
row1_1,row1_2
row2_1,row2_2
//}

//emlist[例 headers: true][ruby]{
require "csv"

csv
= CSV.new(DATA.read, headers: true)
csv
.read
# => #<CSV::Table mode:col_or_row row_count:3>

__END__
header1,header2
row1_1,row1_2
row2_1,row2_2
//}...

CSV#close_read -> nil (18373.0)

IO#close_read に委譲します。

IO#close_read に委譲します。


@see IO#close_read

CSV.readlines(path, options = Hash.new) -> [Array] | CSV::Table (18343.0)

CSV ファイルを配列の配列にするために使います。 headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。

...
CSV
ファイルを配列の配列にするために使います。
headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。

@param path CSV ファイルのパスを指定します。

@param options CSV.new のオプションと同じオプ...
...しなければなりません。

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

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


pp CSV.read("test.csv")

# => [["id", "first name", "last name", "age"],
# ["1", "tar...
.../}

//emlist[例][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


table = CSV.read("test.csv", headers: true)
p table.class # => CSV::Table
p table[0] # => #<CSV::Row "id":"1" "first name":"taro"...

絞り込み条件を変える

CSV#readline -> Array | CSV::Row (9322.0)

String や IO をラップしたデータソースから一行だけ読み込んで フィールドの配列か CSV::Row のインスタンスを返します。

...ールドの配列か CSV::Row のインスタンスを返します。

データソースは読み込み用にオープンされている必要があります。

@return ヘッダを使用しない場合は配列を返します。
ヘッダを使用する場合は CSV::Row を返します...
...

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

csv
= CSV.new(DATA.read)
csv
.readline # => ["header1", "header2"]
csv
.readline # => ["row1_1", "row1_2"]

__END__
header1,header2
row1_1,row1_2
//}...

CSV.new(data, options = Hash.new) -> CSV (58.0)

このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。

...このメソッドは CSV ファイルを読み込んだり、書き出したりするために
String か IO のインスタンスをラップします。

ラップされた文字列の先頭から読み込むことになります。
文字列に追記したい場合は CSV.generate を使用し...
...ンスを指定します。
String のインスタンスを指定した場合、CSV#string を使用して
後からデータを取り出すことが出来ます。

@param options CSV をパースするためのオプションをハッシュで指定します。...
...ション
で便利です。
CSV
will always consider a double sequence this character to be an
escaped quote.
この文字列はパースする前にデータのエンコーディングに変換されます。
: :field_size_limit
This is a maximum size CSV will read ahead looking for th...

CSV#<<(row) -> self (40.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#add_row(row) -> self (40.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#field_size_limit -> Integer (40.0)

フィールドサイズの最大値を返します。

...csv"

csv
= CSV.new(DATA)
csv
.field_size_limit # => nil
p csv.read # => [["a", "b"], ["\n2\n2\n", ""]]

DATA.rewind
csv
= CSV.new(DATA, field_size_limit: 4)
p csv.field_size_limit # => 4
csv
.read # => #<CSV::MalformedCSVError: Field size exceeded on line 2.>

__END__
"a","b"
"
2
2
",""
//}

@see CSV...

絞り込み条件を変える

CSV#puts(row) -> self (40.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#skip_blanks? -> bool (40.0)

真である場合は、空行を読み飛ばします。

...[例][ruby]{
require "csv"

csv
= CSV.new("header1,header2\n\nrow1_1,row1_2")
csv
.skip_blanks? # => false
csv
.read # => [["header1", "header2"], [], ["row1_1", "row1_2"]]
csv
= CSV.new("header1,header2\n\nrow1_1,row1_2", skip_blanks: true)
csv
.skip_blanks? # => true
csv
.read # => [["...
...header1", "header2"], ["row1_1", "row1_2"]]
//}

@see CSV.new...

CSV.open(filename, mode = "rb", options = Hash.new) -> CSV (40.0)

このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

...ンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジ...
...た場合は CSV オブジェクトを返します。

データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するために CSV ライブ...
...UTF-8 に変換してから解析します。

また "rb:BOM|UTF-8" のように mode を指定すると BOM を自動的に取り除きま
す。

CSV
オブジェクトは多くのメソッドを IO や File に委譲します。

* IO#binmode
* IO#binmode?
* IO#close
* IO#close_read
*...

CSV.open(filename, mode = "rb", options = Hash.new) {|csv| ... } -> nil (40.0)

このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

...ンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジ...
...た場合は CSV オブジェクトを返します。

データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するために CSV ライブ...
...UTF-8 に変換してから解析します。

また "rb:BOM|UTF-8" のように mode を指定すると BOM を自動的に取り除きま
す。

CSV
オブジェクトは多くのメソッドを IO や File に委譲します。

* IO#binmode
* IO#binmode?
* IO#close
* IO#close_read
*...

CSV.open(filename, options = Hash.new) -> CSV (40.0)

このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

...ンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジ...
...た場合は CSV オブジェクトを返します。

データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するために CSV ライブ...
...UTF-8 に変換してから解析します。

また "rb:BOM|UTF-8" のように mode を指定すると BOM を自動的に取り除きま
す。

CSV
オブジェクトは多くのメソッドを IO や File に委譲します。

* IO#binmode
* IO#binmode?
* IO#close
* IO#close_read
*...

絞り込み条件を変える

CSV.open(filename, options = Hash.new) {|csv| ... } -> nil (40.0)

このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

...ンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。

このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジ...
...た場合は CSV オブジェクトを返します。

データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するために CSV ライブ...
...UTF-8 に変換してから解析します。

また "rb:BOM|UTF-8" のように mode を指定すると BOM を自動的に取り除きま
す。

CSV
オブジェクトは多くのメソッドを IO や File に委譲します。

* IO#binmode
* IO#binmode?
* IO#close
* IO#close_read
*...

CSV.table(path, options = Hash.new) -> CSV::Table | [Array] (40.0)

以下と同等のことを行うメソッドです。

...ッドです。

//emlist[][ruby]{
CSV
.read( path, { headers: true,
converters: :numeric,
header_converters: :symbol }.merge(options) )
//}

@param path ファイル名を指定します。

@param options CSV.new のオプションと同じオプ...
...ションを指定できます。


@see CSV.read...

CSV#convert {|field, field_info| ... } (22.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

...フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロッ...
... CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name で Converter を指定][ruby]{
require "csv"

csv
= CSV.new("...
...07-09,2018-07-10")
csv
.convert(:date)
csv
.read # => 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)>, #<Date: 2018-07-10 ((2458310j,0s,0n),+0s,2299161j)>
//}

//emlist[例 ブロックを指定][ruby]{
require "csv"

csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv
.convert do |fiel...

CSV#convert {|field| ... } (22.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

...フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロッ...
... CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name で Converter を指定][ruby]{
require "csv"

csv
= CSV.new("...
...07-09,2018-07-10")
csv
.convert(:date)
csv
.read # => 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)>, #<Date: 2018-07-10 ((2458310j,0s,0n),+0s,2299161j)>
//}

//emlist[例 ブロックを指定][ruby]{
require "csv"

csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv
.convert do |fiel...

CSV#convert(name) (22.0)

引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。

...フィールドを渡して文字列から別
のオブジェクトへと変換します。

引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。

ブロッ...
... CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。

@param name 変換器の名前を指定します。

//emlist[例 name で Converter を指定][ruby]{
require "csv"

csv
= CSV.new("...
...07-09,2018-07-10")
csv
.convert(:date)
csv
.read # => 2018-07-09 ((2458309j,0s,0n),+0s,2299161j)>, #<Date: 2018-07-10 ((2458310j,0s,0n),+0s,2299161j)>
//}

//emlist[例 ブロックを指定][ruby]{
require "csv"

csv
= CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv
.convert do |fiel...

絞り込み条件を変える

CSV#gets -> Array | CSV::Row (22.0)

String や IO をラップしたデータソースから一行だけ読み込んで フィールドの配列か CSV::Row のインスタンスを返します。

...ールドの配列か CSV::Row のインスタンスを返します。

データソースは読み込み用にオープンされている必要があります。

@return ヘッダを使用しない場合は配列を返します。
ヘッダを使用する場合は CSV::Row を返します...
...

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

csv
= CSV.new(DATA.read)
csv
.readline # => ["header1", "header2"]
csv
.readline # => ["row1_1", "row1_2"]

__END__
header1,header2
row1_1,row1_2
//}...

CSV#header_converters -> Array (22.0)

現在有効なヘッダ用変換器のリストを返します。

...ェクトを返します。

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

csv
= CSV.new("HEADER1,HEADER2\nrow1_1,row1_2", headers: true, header_converters: CSV::HeaderConverters.keys)
csv
.header_converters # => [:downcase, :symbol]
csv
.read.to_a # => header2], ["row1_1", "row1_2"
//}

@see CSV.new...

CSV#headers -> Array | true | nil (22.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_sep -> String (22.0)

行区切り文字列として使用する文字列を返します。

...行区切り文字列として使用する文字列を返します。

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

csv
= CSV.new("header1,header2|row1_1,row1_2", row_sep: "|")
csv
.row_sep # => "|"
csv
.read # => [["header1", "header2"], ["row1_1", "row1_2"]]
//}

@see CSV.new...

CSV#shift -> Array | CSV::Row (22.0)

String や IO をラップしたデータソースから一行だけ読み込んで フィールドの配列か CSV::Row のインスタンスを返します。

...ールドの配列か CSV::Row のインスタンスを返します。

データソースは読み込み用にオープンされている必要があります。

@return ヘッダを使用しない場合は配列を返します。
ヘッダを使用する場合は CSV::Row を返します...
...

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

csv
= CSV.new(DATA.read)
csv
.readline # => ["header1", "header2"]
csv
.readline # => ["row1_1", "row1_2"]

__END__
header1,header2
row1_1,row1_2
//}...

絞り込み条件を変える

CSV.instance(data = $stdout, options = Hash.new) -> CSV (22.0)

このメソッドは CSV.new のように CSV のインスタンスを返します。 しかし、返される値は Object#object_id と与えられたオプションを キーとしてキャッシュされます。

...このメソッドは CSV.new のように CSV のインスタンスを返します。
しかし、返される値は Object#object_id と与えられたオプションを
キーとしてキャッシュされます。

ブロックが与えられた場合、生成されたインスタンスをブ...
...ns CSV.new のオプションと同じオプションを指定できます。

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

options = { headers: true }

text =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
EOS

csv
= CSV.instance(text, options)
csv
2 = CSV....
...instance(text, options)
csv
.object_id == csv2.object_id # => true
print csv.read

# => id,first name,last name,age
# 1,taro,tanaka,20
# 2,jiro,suzuki,18
# 3,ami,sato,19
# 4,yumi,adachi,21
//}

@see CSV.new...

CSV.instance(data = $stdout, options = Hash.new) {|csv| ... } -> object (22.0)

このメソッドは CSV.new のように CSV のインスタンスを返します。 しかし、返される値は Object#object_id と与えられたオプションを キーとしてキャッシュされます。

...このメソッドは CSV.new のように CSV のインスタンスを返します。
しかし、返される値は Object#object_id と与えられたオプションを
キーとしてキャッシュされます。

ブロックが与えられた場合、生成されたインスタンスをブ...
...ns CSV.new のオプションと同じオプションを指定できます。

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

options = { headers: true }

text =<<-EOS
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
EOS

csv
= CSV.instance(text, options)
csv
2 = CSV....
...instance(text, options)
csv
.object_id == csv2.object_id # => true
print csv.read

# => id,first name,last name,age
# 1,taro,tanaka,20
# 2,jiro,suzuki,18
# 3,ami,sato,19
# 4,yumi,adachi,21
//}

@see CSV.new...