ライブラリ
-
cgi
/ core (2) - csv (53)
-
net
/ http (15) -
webrick
/ httputils (1)
クラス
- CGI (2)
- CSV (15)
-
CSV
:: FieldInfo (1) -
CSV
:: Row (16) -
CSV
:: Table (21) -
WEBrick
:: HTTPUtils :: FormData (1)
モジュール
-
Net
:: HTTPHeader (15)
キーワード
- << (2)
- == (2)
- [] (6)
- []= (4)
-
by
_ col (1) -
by
_ col! (1) -
by
_ col _ or _ row (1) -
by
_ col _ or _ row! (1) -
by
_ row (1) -
by
_ row! (1) - chunked? (1)
-
content
_ length (1) -
content
_ length= (1) -
content
_ range (1) -
content
_ type (1) - convert (2)
- delete (3)
-
delete
_ if (3) - each (5)
-
each
_ capitalized _ name (1) -
each
_ header (1) -
each
_ value (1) - fetch (1)
- field (1)
- field? (1)
-
field
_ row? (1) - fields (1)
-
force
_ quotes? (1) - header? (1)
-
header
_ convert (2) -
header
_ row? (2) - headers (2)
- include? (1)
- lineno (1)
- mode (1)
- out (1)
- range (1)
-
range
_ length (1) - read (1)
- readline (1)
- readlines (1)
-
return
_ headers? (1) -
skip
_ blanks? (1) -
to
_ a (1) -
values
_ at (2) -
write
_ headers? (1)
検索結果
先頭5件
-
CSV
:: FieldInfo # header -> String | nil (63643.0) -
利用可能な場合はヘッダを表す文字列を返します。
利用可能な場合はヘッダを表す文字列を返します。
//emlist[例][ruby]{
require 'csv'
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv.convert do |field,field_info|
p field_info.header
Date.parse(field)
end
p csv.first
# => "date1"
# => "date2"
# => #<CSV::Row "date1":#<Date: 2018-07-09 ((2458309j,... -
CGI
# header(options = "text / html") -> String (54733.0) -
HTTP ヘッダを options に従って生成します。 CGI#out と違い、標準出力には出力しません。 CGI#out を使わずに自力で HTML を出力したい場合などに使います。 このメソッドは文字列エンコーディングを変換しません。
HTTP ヘッダを options に従って生成します。 CGI#out と違い、標準出力には出力しません。
CGI#out を使わずに自力で HTML を出力したい場合などに使います。
このメソッドは文字列エンコーディングを変換しません。
ヘッダのキーとしては以下が利用可能です。
: type
Content-Type ヘッダです。デフォルトは "text/html" です。
: charset
ボディのキャラクタセットを Content-Type ヘッダに追加します。
: nph
真偽値を指定します。真ならば、HTTP のバージョン、ステータスコード、
Date ヘッ... -
CSV
:: Table # delete(index _ or _ header) -> object (27769.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(["header1",... -
Net
:: HTTPHeader # content _ length=(len) (27622.0) -
Content-Length: ヘッダフィールドに値を設定します。
Content-Length: ヘッダフィールドに値を設定します。
len に nil を与えると Content-Length: ヘッダフィールドを
削除します。
@param len 設定する値を整数で与えます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.content_length # => nil
req.content_length = ... -
Net
:: HTTPHeader # each _ value {|value| . . . . } -> () (27622.0) -
保持しているヘッダの値をブロックに渡し、呼びだします。
保持しているヘッダの値をブロックに渡し、呼びだします。
渡される文字列は ", " で連結したものです。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_value { |value| puts value }
# => gzip;q=1.0,deflate;q=0.6,identity;q=0.3
# => */*
# => Ruby
//} -
CSV
:: Table # delete _ if {|column _ name , values| . . . } -> self (27610.0) -
ブロックを評価した結果が真である行か列を削除します。
ブロックを評価した結果が真である行か列を削除します。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][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(["... -
CSV
:: Table # delete _ if {|row| . . . } -> self (27610.0) -
ブロックを評価した結果が真である行か列を削除します。
ブロックを評価した結果が真である行か列を削除します。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][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(["... -
Net
:: HTTPHeader # each _ capitalized _ name {|name| . . . . } -> () (27418.0) -
保持しているヘッダ名を正規化 ('x-my-header' -> 'X-My-Header') して、ブロックに渡します。
保持しているヘッダ名を正規化
('x-my-header' -> 'X-My-Header')
して、ブロックに渡します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_capitalized_name { |key| puts key }
# => Accept-Encoding
# => Accept
# => User-Agent
//} -
CSV
:: Table # headers -> Array (27412.0) -
自身のヘッダ行を返します。
自身のヘッダ行を返します。
テーブルが空である場合は空の配列を返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
table = CSV::Table.new([row])
table.headers # => ["header1", "header2"]
//} -
Net
:: HTTPHeader # content _ length -> Integer|nil (27322.0) -
Content-Length: ヘッダフィールドの表している値を整数で返します。
Content-Length: ヘッダフィールドの表している値を整数で返します。
ヘッダが設定されていない場合には nil を返します。
@raise Net::HTTPHeaderSyntaxError フィールドの値が不正である場合に
発生します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
re... -
Net
:: HTTPHeader # delete(key) -> [String] | nil (27322.0) -
key ヘッダフィールドを削除します。
key ヘッダフィールドを削除します。
@param key 削除するフィールド名
@return 取り除かれたフィールドの値を返します。
key ヘッダフィールドが存在しなかった場合には
nil を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.content_length = 10
req.content_length... -
Net
:: HTTPHeader # range _ length -> Integer|nil (27322.0) -
Content-Range: ヘッダフィールドの表している長さを整数で返します。
Content-Range: ヘッダフィールドの表している長さを整数で返します。
ヘッダが設定されていない場合には nil を返します。
@raise Net::HTTPHeaderSyntaxError Content-Range: ヘッダフィールド
の値が不正である場合に
発生します。
//emlist[例][ruby]{
require 'net/http'
uri = UR... -
CSV
# header _ convert {|field , field _ info| . . . } (19147.0) -
CSV#convert に似ていますが、ヘッダ行用のメソッドです。
CSV#convert に似ていますが、ヘッダ行用のメソッドです。
このメソッドはヘッダ行を読み込む前に呼び出さなければなりません。
@param name 変換器の名前を指定します。
//emlist[例 name を指定][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_convert(:symbol)
csv.first.headers # => [:header1, :header2]
//}
//emlist[例 ブロックを指定][... -
CSV
:: Row # delete(header _ or _ index , minimum _ index = 0) -> [object , object] | nil (19039.0) -
ヘッダの名前かインデックスで行からフィールドを削除するために使用します。
ヘッダの名前かインデックスで行からフィールドを削除するために使用します。
@param header_or_index ヘッダの名前かインデックスを指定します。
@param minimum_index このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
@return 削除したヘッダとフィールドの組を返します。削除対象が見つからなかった場合は nil を返します。
//emlist[例 ヘッダの名前で指定][ruby]{
require "csv"
row = CSV::Row.new(["hea... -
CSV
:: Table # values _ at(indices _ or _ headers) -> Array (18892.0) -
デフォルトのミックスモードでは、インデックスのリストを与えると行単位の 参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行 単位の参照では、返り値は行ごとの配列を要素に持つ配列です。
デフォルトのミックスモードでは、インデックスのリストを与えると行単位の
参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行
単位の参照では、返り値は行ごとの配列を要素に持つ配列です。
探索方法を変更したい場合は CSV::Table#by_col!,
CSV::Table#by_row! を使用してください。
アクセスモードを混在させることはできません。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
r... -
CSV
# header _ convert {|field| . . . } (18847.0) -
CSV#convert に似ていますが、ヘッダ行用のメソッドです。
CSV#convert に似ていますが、ヘッダ行用のメソッドです。
このメソッドはヘッダ行を読み込む前に呼び出さなければなりません。
@param name 変換器の名前を指定します。
//emlist[例 name を指定][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_convert(:symbol)
csv.first.headers # => [:header1, :header2]
//}
//emlist[例 ブロックを指定][... -
CSV
:: Row # delete _ if {|header , field| . . . } -> self (18841.0) -
与えられたブロックにヘッダとフィールドのペアを渡して評価します。 評価した結果が真である場合に、その組を自身から削除します。
与えられたブロックにヘッダとフィールドのペアを渡して評価します。
評価した結果が真である場合に、その組を自身から削除します。
@return メソッドチェーンのために自身を返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3", "header4"], ["valid1", "valid2", "invalid", "valid4"])
row # => #<CSV::Row "header1":"valid1" "header2":"valid2" "hea... -
CSV
# return _ headers? -> bool (18838.0) -
ヘッダを返す場合は、真を返します。 そうでない場合は、偽を返します。
ヘッダを返す場合は、真を返します。
そうでない場合は、偽を返します。
//emlist[例][ruby]{
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"... -
CSV
:: Row # header _ row? -> bool (18787.0) -
ヘッダ行であれば真を返します。そうでなければ偽を返します。
ヘッダ行であれば真を返します。そうでなければ偽を返します。
//emlist[例][ruby]{
require "csv"
header_row = CSV::Row.new(["header1", "header2"], [], true)
row = CSV::Row.new(["header1", "header2"], [1, 2])
header_row.header_row? # => true
row.header_row? # => false
//} -
CSV
# headers -> Array | true | nil (18766.0) -
nil を返した場合は、ヘッダは使用されません。 真を返した場合は、ヘッダを使用するが、まだ読み込まれていません。 配列を返した場合は、ヘッダは既に読み込まれています。
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 # =>... -
CSV
# write _ headers? -> bool (18766.0) -
ヘッダを出力先に書き込む場合は真を返します。 そうでない場合は偽を返します。
ヘッダを出力先に書き込む場合は真を返します。
そうでない場合は偽を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10")
csv.write_headers? # => nil
header = ["header1", "header2"]
row = ["row1_1", "row1_2"]
result = CSV.generate(headers: header, write_headers: false) do |csv|
csv.write_hea... -
CSV
:: Row # header?(name) -> bool (18733.0) -
自身のヘッダに与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
自身のヘッダに与えられた値が含まれている場合は真を返します。
そうでない場合は偽を返します。
@param name この行のヘッダに含まれているかどうか調べたい値を指定します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], [1, 2])
row.header?("header1") # => true
row.header?("header3") # => false
//} -
CSV
# header _ row? -> bool (18697.0) -
次に読み込まれる行が、ヘッダである場合に真を返します。 そうでない場合は、偽を返します。
次に読み込まれる行が、ヘッダである場合に真を返します。
そうでない場合は、偽を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2", headers: true)
csv.header_row? # => true
csv.readline
csv.header_row? # => false
//} -
Net
:: HTTPHeader # each _ header {|name , val| . . . . } -> () (18643.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
CSV
:: Row # fields(*headers _ and _ or _ indices) -> Array (18622.0) -
与えられた引数に対応する値の配列を返します。
与えられた引数に対応する値の配列を返します。
要素の探索に CSV::Row.field を使用しています。
@param headers_and_or_indices ヘッダの名前かインデックスか Range
のインスタンスか第 1 要素がヘッダの名前で
第 2 要素がオフセットになっている 2 要素
の配列をいくつでも指定します。混在するこ
とがで... -
CSV
:: Row # values _ at(*headers _ and _ or _ indices) -> Array (18622.0) -
与えられた引数に対応する値の配列を返します。
与えられた引数に対応する値の配列を返します。
要素の探索に CSV::Row.field を使用しています。
@param headers_and_or_indices ヘッダの名前かインデックスか Range
のインスタンスか第 1 要素がヘッダの名前で
第 2 要素がオフセットになっている 2 要素
の配列をいくつでも指定します。混在するこ
とがで... -
CSV
# skip _ blanks? -> bool (18502.0) -
真である場合は、空行を読み飛ばします。
真である場合は、空行を読み飛ばします。
//emlist[例][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? # => tr... -
CSV
:: Row # field _ row? -> bool (18448.0) -
フィールド行であれば真を返します。そうでなければ偽を返します。
フィールド行であれば真を返します。そうでなければ偽を返します。
//emlist[例][ruby]{
require "csv"
header_row = CSV::Row.new(["header1", "header2"], [], true)
row = CSV::Row.new(["header1", "header2"], [1, 2])
header_row.field_row? # => false
row.field_row? # => true
//} -
CSV
:: Row # include?(name) -> bool (18433.0) -
自身のヘッダに与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
自身のヘッダに与えられた値が含まれている場合は真を返します。
そうでない場合は偽を返します。
@param name この行のヘッダに含まれているかどうか調べたい値を指定します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], [1, 2])
row.header?("header1") # => true
row.header?("header3") # => false
//} -
CSV
:: Table # by _ col -> CSV :: Table (18430.0) -
カラムモードになっている新しい CSV::Table オブジェクトを返します。
カラムモードになっている新しい CSV::Table オブジェクトを返します。
元のテーブルモードを変更せずにメソッドチェーンできるので便利です。しか
し、大きなデータセットに対しても同じだけメモリを消費するので気をつけて
ください。
このメソッドは複製したテーブルを返すので、破壊的なメソッドはメソッド
チェーンに組込まないようにしてください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["... -
CSV
:: Table # by _ col! -> self (18430.0) -
自身をカラムモードに変更します。
自身をカラムモードに変更します。
再びモードが変更されるまで、いくつかのメソッドはカラム単位で動きます。
@return 必ず自身を返すので安全にメソッドチェーンできます。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.... -
CSV
:: Table # by _ col _ or _ row -> CSV :: Table (18430.0) -
ミックスモードになっている新しい CSV::Table オブジェクトを返します。
ミックスモードになっている新しい CSV::Table オブジェクトを返します。
元のテーブルモードを変更せずにメソッドチェーンできるので便利です。しか
し、大きなデータセットに対しても同じだけメモリを消費するので気をつけて
ください。
このメソッドは複製したテーブルを返すので、破壊的なメソッドはメソッド
チェーンに組込まないようにしてください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new([... -
CSV
:: Table # by _ col _ or _ row! -> self (18430.0) -
自身をミックスモードに変更します。
自身をミックスモードに変更します。
再びモードが変更されるまで、いくつかのメソッドはミックスモードで動きます。
デフォルトのミックスモードではインデックスによるアクセスは行単位での参
照であると見なします。しかし、他の方法ではヘッダによる列単位での参照で
あると見なします。
@return 必ず自身を返すので安全にメソッドチェーンできます。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["h... -
CSV
:: Row # field?(data) -> bool (18394.0) -
自身に与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
自身に与えられた値が含まれている場合は真を返します。
そうでない場合は偽を返します。
@param data この行に含まれているかどうか調べたい値を指定します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3", "header4"], [1, 2, 3, 4])
row.field?(1) # => true
row.field?(5) # => false
//} -
CSV
# lineno -> Integer (18358.0) -
このファイルから読み込んだ最終行の行番号を返します。 フィールドに含まれる改行はこの値には影響しません。
このファイルから読み込んだ最終行の行番号を返します。
フィールドに含まれる改行はこの値には影響しません。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2")
csv.lineno # => 0
csv.readline
csv.lineno # => 1
//} -
CSV
:: Table # each {|column _ name , values| . . . } -> self (10108.0) -
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し ます。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//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... -
CSV
:: Table # [](header) -> [String] | [nil] (10075.0) -
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作
し、ヘッダの名前を指定すれば列単位で動作します。
このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。
@param index ミックスモード・ロウモードでは、取得したい行の行番号を整数で指定します。
カラムモードでは、取得したい列の列番号を整数で指定します。
@param range 取得したい範囲を整数の範囲で指定します。
@param header 取得... -
CSV
:: Table # []=(index _ or _ header , value) (9913.0) -
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作
し、ヘッダの名前を指定すれば列単位で動作します。
このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。
行には配列か CSV::Row のインスタンスを指定します。
列に値を一つだけ指定した場合は、全ての行にその値をコピーします。配列を
指定した場合は、上から順に値を割り当てます。余分な値は無視します。また、
値が不足している場合は nil を割り当てます。
既存の行または列のデータ... -
CSV
:: Table # each {|row| . . . } -> self (9808.0) -
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し ます。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//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... -
CSV
:: Table # [](index) -> CSV :: Row | [String] | nil (9775.0) -
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作
し、ヘッダの名前を指定すれば列単位で動作します。
このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。
@param index ミックスモード・ロウモードでは、取得したい行の行番号を整数で指定します。
カラムモードでは、取得したい列の列番号を整数で指定します。
@param range 取得したい範囲を整数の範囲で指定します。
@param header 取得... -
CSV
:: Table # [](range) -> [CSV :: Row]| [Array] | nil (9775.0) -
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作 し、ヘッダの名前を指定すれば列単位で動作します。
ミックスモードでは、このメソッドは引数に行番号を指定すれば行単位で動作
し、ヘッダの名前を指定すれば列単位で動作します。
このメソッドを呼び出す前に CSV::Table#by_col! を呼び出すとカラム
モードになります。また CSV::Table#by_row! を呼び出すとロウモード
になります。
@param index ミックスモード・ロウモードでは、取得したい行の行番号を整数で指定します。
カラムモードでは、取得したい列の列番号を整数で指定します。
@param range 取得したい範囲を整数の範囲で指定します。
@param header 取得... -
CSV
:: Row # field(header _ or _ index , minimum _ index = 0) -> object | nil (9754.0) -
ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。
ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。
@param header_or_index ヘッダの名前かインデックスを指定します。
@param minimum_index このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row.field("h... -
WEBrick
:: HTTPUtils :: FormData # [](header) -> String | nil (9691.0) -
自身が multipart/form-data なデータの場合に、header で指定された ヘッダの値を文字列で返します。無ければ nil を返します。
自身が multipart/form-data なデータの場合に、header で指定された
ヘッダの値を文字列で返します。無ければ nil を返します。
@param header ヘッダ名を文字列で指定します。大文字と小文字を区別しません。
例:
require "webrick/cgi"
class MyCGI < WEBrick::CGI
def do_GET(req, res)
p req.query['q']['content-type'] #=> "plain/text"
end
end
MyCGI.new.start() -
CSV
:: Table # ==(other) -> bool (9610.0) -
自身の全ての行が比較対象と同じである場合は真を返します。 そうでない場合は偽を返します。
自身の全ての行が比較対象と同じである場合は真を返します。
そうでない場合は偽を返します。
@param other CSV::Table を指定します。
//emlist[例][ruby]{
require "csv"
row1_1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row1_2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
row2_1 = CSV::Row.new(["header1", "header2"], ["ro... -
CSV
:: Table # by _ row -> CSV :: Table (9502.0) -
ロウモードになっている新しい CSV::Table オブジェクトを返します。
ロウモードになっている新しい CSV::Table オブジェクトを返します。
元のテーブルモードを変更せずにメソッドチェーンできるので便利です。しか
し、大きなデータセットに対しても同じだけメモリを消費するので気をつけて
ください。
このメソッドは複製したテーブルを返すので、破壊的なメソッドはメソッド
チェーンに組込まないようにしてください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["h... -
CSV
:: Table # by _ row! -> self (9502.0) -
自身をロウモードに変更します。
自身をロウモードに変更します。
再びモードが変更されるまで、いくつかのメソッドは行単位で動きます。
@return 必ず自身を返すので安全にメソッドチェーンできます。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table ... -
CSV
:: Table # <<(row _ or _ array) -> self (9466.0) -
自身の最後に新しい行を追加します。
自身の最後に新しい行を追加します。
@param row_or_array CSV::Row のインスタンスか配列を指定します。
配列を指定した場合は CSV::Row に変換されます。
@return メソッドチェーンのために自身を返します。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1"... -
CSV
# readlines -> [Array] | CSV :: Table (9448.0) -
残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。
残りの行を読み込んで配列の配列を返します。
self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。
データソースは読み込み用にオープンされている必要があります。
//emlist[例 headers: false][ruby]{
require "csv"
csv = CSV.new(DATA.read)
csv.read
# => [["header1", "header2"], ["row1_1", "row1_2"], ["row2_1", "row2_2"]]
__END__
header1,head... -
CSV
# readline -> Array | CSV :: Row (9394.0) -
String や IO をラップしたデータソースから一行だけ読み込んで フィールドの配列か CSV::Row のインスタンスを返します。
String や IO をラップしたデータソースから一行だけ読み込んで
フィールドの配列か CSV::Row のインスタンスを返します。
データソースは読み込み用にオープンされている必要があります。
@return ヘッダを使用しない場合は配列を返します。
ヘッダを使用する場合は CSV::Row を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new(DATA.read)
csv.readline # => ["header1", "header2"]
csv.readline # => ["row1_1", "r... -
CSV
:: Table # mode -> Symbol (9376.0) -
現在のアクセスモードを返します。
現在のアクセスモードを返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
table = CSV::Table.new([row])
table.mode # => :col_or_row
table.by_col!
table.mode # => :col
//} -
Net
:: HTTPHeader # fetch(key , default) -> String (9358.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て ", " で連結した文字列を返します。
key は大文字小文字を区別しません。
@param key ヘッダフィール名を文字列で与えます。
@param default 該... -
Net
:: HTTPHeader # each {|name , val| . . . . } -> () (9343.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Net
:: HTTPHeader # range -> Range|nil (9340.0) -
Range: ヘッダの示す範囲を Range オブジェクトで返します。
Range: ヘッダの示す範囲を Range オブジェクトで返します。
ヘッダにない場合は nil を返します。
@raise Net::HTTPHeaderSyntaxError Range:ヘッダの中身が規格通り
でない場合に発生します。
//emlist[例 正常な値][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
r... -
Net
:: HTTPHeader # [](key) -> String|nil (9322.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req['user-agent'] # => Ruby
//}
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て... -
Net
:: HTTPHeader # []=(key , val) (9322.0) -
key ヘッダフィールドに文字列 val をセットします。
key ヘッダフィールドに文字列 val をセットします。
key に元々設定されていた値は破棄されます。
key は大文字小文字を区別しません。
val に nil を与えるとそのフィールドを削除します。
@param key ヘッダフィール名を文字列で与えます。
@param val keyで指定したフィールドにセットする文字列を与えます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.re... -
Net
:: HTTPHeader # chunked? -> bool (9322.0) -
Transfer-Encoding: ヘッダフィールドが "chunked" である 場合に真を返します。
Transfer-Encoding: ヘッダフィールドが "chunked" である
場合に真を返します。
Transfer-Encoding: ヘッダフィールドが存在しなかったり、
"chunked" 以外である場合には偽を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.chunked? # => false
req["Transfer-Encodin... -
Net
:: HTTPHeader # content _ range -> Range|nil (9322.0) -
Content-Range: ヘッダフィールドの値を Range で返します。 Range の表わす長さは Net::HTTPHeader#range_length で得られます。
Content-Range: ヘッダフィールドの値を Range で返します。
Range の表わす長さは Net::HTTPHeader#range_length で得られます。
ヘッダが設定されていない場合には nil を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.content_range # => nil
req['Content... -
Net
:: HTTPHeader # content _ type -> String|nil (9322.0) -
"text/html" のような Content-Type を表す 文字列を返します。
"text/html" のような Content-Type を表す
文字列を返します。
Content-Type: ヘッダフィールドが存在しない場合には nil を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/comments.cgi?post=comment')
req = Net::HTTP::Post.new(uri.request_uri)
req.content_type # => nil
req.content_type = 'multipart/for... -
CSV
:: Table # to _ a -> [Array] (9166.0) -
配列の配列を返します。
配列の配列を返します。
一番目の要素はヘッダで、残りの要素はデータを表わします。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.to_a # => [["header1", "header2"], ["row1_1", "... -
CSV
:: Row # []=(header _ or _ index , value) (1027.0) -
ヘッダの名前かインデックスでフィールドを探し、値をセットします。
ヘッダの名前かインデックスでフィールドを探し、値をセットします。
末尾より後ろのインデックスを指定すると、ヘッダの名前は nil になります。
存在しないヘッダを指定すると、新しい要素を末尾に追加します。
@param header_or_index ヘッダの名前かインデックスを指定します。
@param value 値を指定します。
//emlist[例 ヘッダの名前で指定][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row["header1"] ... -
CSV
:: Row # each {|header , field| . . . } -> self (805.0) -
与えられたブロックにヘッダとフィールドの組を渡して評価します。
与えられたブロックにヘッダとフィールドの組を渡して評価します。
@return メソッドチェーンのために自身を返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3", "header4"], [1, 2, 3, 4])
row.each { |header, field| puts "#{header} - #{field}" }
# => header1 - 1
# => header2 - 2
# => header3 - 3
# => header4 -... -
CSV
:: Row # [](header _ or _ index , minimum _ index = 0) -> object | nil (754.0) -
ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。
ヘッダの名前かインデックスで値を取得します。フィールドが見つからなかった場合は nil を返します。
@param header_or_index ヘッダの名前かインデックスを指定します。
@param minimum_index このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row.field("h... -
CSV
:: Row # []=(header , offset , value) (697.0) -
ヘッダの名前でフィールドを探し、値をセットします。
ヘッダの名前でフィールドを探し、値をセットします。
@param header ヘッダの名前を指定します。
@param offset このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
@param value 値を指定します。
@see CSV::Row#field -
CSV
# convert {|field , field _ info| . . . } (694.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
CSV
:: Row # <<(arg) -> self (484.0) -
自身に与えられたデータを追加します。
自身に与えられたデータを追加します。
@param arg 2 要素の配列か 1 要素のハッシュか任意のオブジェクトを指定します。
2 要素の配列を与えた場合は、ヘッダとフィールドのペアを追加します。
1 要素のハッシュを与えた場合は、キーをヘッダ、値をフィールドとして追加します。
それ以外の場合は、ヘッダを nil 、フィールドを与えられた値として追加します。
@return メソッドチェーンのために自身を返します。
//emlist[例 2要素の配列を指定][ruby]{
require "csv"
row = C... -
CSV
# force _ quotes? -> bool (466.0) -
出力される全てのフィールドがクオートされる場合は、真を返します。
出力される全てのフィールドがクオートされる場合は、真を返します。
//emlist[例][ruby]{
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... -
CSV
# read -> [Array] | CSV :: Table (448.0) -
残りの行を読み込んで配列の配列を返します。 self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。
残りの行を読み込んで配列の配列を返します。
self の生成時に headers オプションに偽でない値が指定されていた場合は CSV::Table オブジェクトを返します。
データソースは読み込み用にオープンされている必要があります。
//emlist[例 headers: false][ruby]{
require "csv"
csv = CSV.new(DATA.read)
csv.read
# => [["header1", "header2"], ["row1_1", "row1_2"], ["row2_1", "row2_2"]]
__END__
header1,head... -
CSV
:: Row # ==(other) -> bool (430.0) -
自身が other と同じヘッダやフィールドを持つ場合に真を返します。 そうでない場合は偽を返します。
自身が other と同じヘッダやフィールドを持つ場合に真を返します。
そうでない場合は偽を返します。
@param other 比較対象の CSV::Row のインスタンスを指定します。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row1 == row2 # => true
row2 << ["he... -
CSV
# each {|row| . . . } -> nil (412.0) -
各行に対してブロックを評価します。
各行に対してブロックを評価します。
データソースは読み込み用にオープンされていなければなりません。
//emlist[例 CSV.new 時に :header => true を指定した場合][ruby]{
require "csv"
users = <<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 = CSV.new(users, headers: true)
csv.each do |row|
p row
end
... -
CSV
# convert {|field| . . . } (394.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
CGI
# out(options = "text / html") { . . . . } (376.0) -
HTTP ヘッダと、ブロックで与えられた文字列を標準出力に出力します。
HTTP ヘッダと、ブロックで与えられた文字列を標準出力に出力します。
HEADリクエスト (REQUEST_METHOD == "HEAD") の場合は HTTP ヘッダのみを出力します。
charset が "iso-2022-jp"・"euc-jp"・"shift_jis" のいずれかで
ある場合は文字列エンコーディングを自動変換し、language を "ja"にします。
@param options Hash か文字列で HTTP ヘッダを生成するための情報を指定します。
例:
cgi = CGI.new
cgi.out{ "string" ...