別のキーワード
ライブラリ
クラス
-
ARGF
. class (1) - Array (2)
- CSV (12)
- Dir (10)
- Encoding (3)
-
Encoding
:: Converter (3) - IO (31)
-
Psych
:: Stream (2) -
REXML
:: Instruction (1) -
REXML
:: XMLDecl (1) - String (13)
-
WIN32OLE
_ VARIANT (1)
モジュール
- Kconv (1)
-
Net
:: HTTPHeader (5) -
OpenURI
:: Meta (2)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - CSV (1)
- ERB (1)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 0 . 0 (1) - Rubyの起動 (1)
- Ruby用語集 (1)
-
asciicompat
_ encoding (2) - casecmp (1)
- cgi (1)
- compatible? (1)
- content (1)
-
content
_ encoding (1) -
default
_ internal (1) - each (1)
-
each
_ capitalized _ name (1) -
each
_ header (1) -
each
_ key (1) -
each
_ name (1) - encode (3)
-
external
_ encoding (2) -
for
_ fd (1) - foreach (5)
- generate (1)
-
generate
_ line (1) - guess (1)
-
internal
_ encoding (3) -
last
_ error (1) -
locale
_ charmap (1) - new (5)
- open (10)
- open-uri (1)
- pack (2)
- pack テンプレート文字列 (1)
- pipe (8)
- popen (14)
- rdoc (1)
- read (4)
- readlines (1)
-
rexml
/ document (1) -
rexml
/ parsers / pullparser (1) -
rexml
/ parsers / sax2parser (1) -
rexml
/ parsers / ultralightparser (1) - rss (1)
-
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) - scanf (2)
- scrub (3)
- scrub! (3)
- start (2)
- unpack (1)
- yaml (1)
- リテラル (1)
- 正規表現 (1)
検索結果
先頭5件
-
REXML
:: XMLDecl # encoding -> String | nil (54925.0) -
設定されているエンコーディングの名前を文字列で返します。
設定されているエンコーディングの名前を文字列で返します。
エンコーディングが指定されていない(デフォルトの UTF-8 とみなされます)
場合は nil を返します。 -
Encoding
:: Converter . asciicompat _ encoding(encoding) -> Encoding | nil (28828.0) -
同じ文字集合を持つ ASCII 互換エンコーディングを返します。
同じ文字集合を持つ ASCII 互換エンコーディングを返します。
@param string エンコーディング名
@param encoding エンコーディングオブジェクト
@return ASCII 互換エンコーディングのオブジェクトか nil
引数とエンコーディングと同じ文字集合を持つ ASCII 互換エンコーディングを返します。引数と戻り値、2 つのエンコーディング間では変換しても未定義文字の例外は発生しません。
引数が ASCII 互換エンコーディングである場合や、エンコーディングでない場合は nil を返します。
//emlist[][ruby]{
Encoding::Con... -
Encoding
:: Converter . asciicompat _ encoding(string) -> Encoding | nil (28528.0) -
同じ文字集合を持つ ASCII 互換エンコーディングを返します。
同じ文字集合を持つ ASCII 互換エンコーディングを返します。
@param string エンコーディング名
@param encoding エンコーディングオブジェクト
@return ASCII 互換エンコーディングのオブジェクトか nil
引数とエンコーディングと同じ文字集合を持つ ASCII 互換エンコーディングを返します。引数と戻り値、2 つのエンコーディング間では変換しても未定義文字の例外は発生しません。
引数が ASCII 互換エンコーディングである場合や、エンコーディングでない場合は nil を返します。
//emlist[][ruby]{
Encoding::Con... -
Encoding
. compatible?(obj1 , obj2) -> Encoding | nil (28321.0) -
2つのオブジェクトのエンコーディングに関する互換性をチェックします。 互換性がある場合はそのエンコーディングを、 ない場合は nil を返します。
2つのオブジェクトのエンコーディングに関する互換性をチェックします。
互換性がある場合はそのエンコーディングを、
ない場合は nil を返します。
引数が両方とも文字列である場合、互換性があるならば
その文字列を結合できます。この場合返り値のエンコーディングは
結合した文字列が取るであろう Encoding オブジェクトを返します。
//emlist[例][ruby]{
Encoding.compatible?("\xa1".force_encoding("iso-8859-1"), "b")
#=> #<Encoding:ISO-8859-1>
Encoding.compatible?... -
Encoding
. default _ internal -> Encoding | nil (27997.0) -
既定の内部エンコーディングを返します。デフォルトでは nil です。
既定の内部エンコーディングを返します。デフォルトでは nil です。
標準入出力、コマンドライン引数、open で開くファイルなどで、内部エンコーディングが指定されていない場合の既定値として利用されます。
String#encode と String#encode! は、引数に Encoding が与えられていない場合、 default_internal を使用します。
文字列リテラルを作成した場合、エンコーディングには default_internal ではなく __ENCODING__ 特殊変数で参照できるスクリプトエンコーディングが使用されます。
default_internal... -
Encoding
. locale _ charmap -> String | nil (27730.0) -
ロケールエンコーディングを決定するために用いる、locale charmap 名を返します。nl_langinfo 等がない環境では nil を、miniruby では ASCII_8BIT を返します。
ロケールエンコーディングを決定するために用いる、locale charmap 名を返します。nl_langinfo 等がない環境では nil を、miniruby では ASCII_8BIT を返します。
//emlist[Debian GNU/Linux + LANG=C][ruby]{
Encoding.locale_charmap #=> "ANSI_X3.4-1968"
//}
//emlist[LANG=ja_JP.EUC-JP][ruby]{
Encoding.locale_charmap #=> "EUC-JP"
//}
//emlist[SunOS 5 + LANG=C]... -
ARGF
. class # internal _ encoding -> Encoding | nil (19462.0) -
ARGF から読み込んだ文字列の内部エンコーディングを返します。 内部エンコーディングが指定されていない場合は nil を返します。
ARGF から読み込んだ文字列の内部エンコーディングを返します。
内部エンコーディングが指定されていない場合は nil を返します。
まだ読み込み処理を始めていない場合は Encoding.default_external を返します。
ARGF.class#set_encoding で設定します。
例:
# $ ruby -Eutf-8 test.rb
# test.rb
ARGF.internal_encoding # => #<Encoding:UTF-8>
ARGF.set_encoding('utf-8','ascii')
ARG... -
IO
# internal _ encoding -> Encoding | nil (19372.0) -
IO の内部エンコーディングを返します。 内部エンコーディングが指定されていない場合は nil を返します。
IO の内部エンコーディングを返します。
内部エンコーディングが指定されていない場合は nil を返します。
//emlist[例][ruby]{
IO.write("testfile", "abcde")
File.open("testfile") do |f|
p f.internal_encoding # => nil
f.set_encoding("ASCII-8BIT", "EUC-JP")
p f.internal_encoding # => #<Encoding:EUC-JP>
end
//} -
IO
# external _ encoding -> Encoding | nil (19348.0) -
IO の外部エンコーディングを返します。 外部エンコーディングが指定されていない場合は nil を返します。 ただし読み込み専用モードの場合は Encoding.default_external になります。
IO の外部エンコーディングを返します。
外部エンコーディングが指定されていない場合は nil を返します。
ただし読み込み専用モードの場合は Encoding.default_external になります。
//emlist[例][ruby]{
IO.write("testfile", "abcde")
File.open("testfile") { |f| p f.external_encoding } # => #<Encoding:UTF-8>
//} -
CSV
# internal _ encoding -> Encoding | nil (19276.0) -
IO#internal_encoding に委譲します。
IO#internal_encoding に委譲します。
@see IO#internal_encoding -
CSV
# external _ encoding -> Encoding | nil (19258.0) -
IO#external_encoding に委譲します。
IO#external_encoding に委譲します。 -
OpenURI
:: Meta # content _ encoding -> [String] (18868.0) -
対象となるリソースの Content-Encoding を文字列の配列として返します。 Content-Encoding ヘッダがない場合は、空の配列を返します。
対象となるリソースの Content-Encoding を文字列の配列として返します。
Content-Encoding ヘッダがない場合は、空の配列を返します。
例:
//emlist[例][ruby]{
require 'open-uri'
open('http://example.com/f.tar.gz') {|f|
p f.content_encoding #=> ["x-gzip"]
}
//} -
open-uri (18433.0)
-
http/ftp に簡単にアクセスするためのクラスです。 Kernel.#open を再定義します。
http/ftp に簡単にアクセスするためのクラスです。
Kernel.#open を再定義します。
=== 使用例
http/ftp の URL を、普通のファイルのように開けます。
require 'open-uri'
open("http://www.ruby-lang.org/") {|f|
f.each_line {|line| p line}
}
開いたファイルオブジェクトは StringIO もしくは Tempfile で
すが OpenURI::Meta モジュールで拡張されていて、メタ情報を獲得する
メソッドが使えます。
require 'o... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12079.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
Encoding
:: Converter # last _ error -> Exception | nil (9712.0) -
直前に変換器で発生した例外に相当する例外オブジェクトを返します。 直前の変換で例外が発生していない場合は nil を返します。
直前に変換器で発生した例外に相当する例外オブジェクトを返します。
直前の変換で例外が発生していない場合は nil を返します。
//emlist[][ruby]{
ec = Encoding::Converter.new("utf-8", "iso-8859-1")
p ec.primitive_convert(src="\xf1abcd", dst="") #=> :invalid_byte_sequence
p ec.last_error #=> #<Encoding::InvalidByteSequenceError: "\xF1" followed by "a"... -
ruby 1
. 9 feature (5959.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ... -
ruby 1
. 8 . 3 feature (4681.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
ruby 1.8.3 feature
*((<ruby 1.8 feature>))
*((<ruby 1.8.2 feature>))
ruby 1.8.2 から ruby 1.8.3 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ... -
ruby 1
. 8 . 4 feature (4465.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
ruby 1.8.4 feature
ruby 1.8.4 での ruby 1.8.3 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
# * カテゴリ
# * [ruby]: ruby インタプリタの変更
# * [api]: 拡張ライブラリ API
# * [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加され... -
正規表現 (3001.0)
-
正規表現 * metachar * expansion * char * anychar * string * str * quantifier * capture * grouping * subexp * selector * anchor * cond * option * encoding * comment * free_format_mode * absenceop * list * specialvar * references
...る文字列を含まない任意の文字列にマッチします。
(Ruby 2.4.1 で更新された Onigmo に含まれる機能のため、Ruby 2.4.0 では使えません。)
例えば (?~abc) は "", "ab", "aab", "abb", "ccdd" などにはマッチしますが、
"abc", "aabc", "ccabcdd" など... -
Marshal フォーマット (2683.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
=== nil, true, false
それぞれ、'0', 'T', 'F' になります。
//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}
Ruby 2.1 以前では、インスタンス変数を設定しても dump されません... -
Rubyの起動 (2665.0)
-
Rubyの起動 * cmd_option * shebang
Rubyの起動
* cmd_option
* shebang
Rubyインタプリタの起動は以下の書式のコマンドラインにより行います。
ruby [ option ...] [ -- ] [ programfile ] [ argument ...]
ここで、option は後述のcmd_option
のいずれかを指定します。-- は、オプション列の終りを明示するため
に使用できます。programfile は、Ruby スクリプトを記述したファイ
ルです。これを省略したり`-' を指定した場合には標準入力を Ruby ス
クリプトとみなします。
programfile が... -
rss (1891.0)
-
RSS を扱うためのライブラリです。
RSS を扱うためのライブラリです。
=== 参考
* RSS 0.91 http://backend.userland.com/rss091
* RSS 1.0 http://purl.org/rss/1.0/spec
* RSS 2.0 http://www.rssboard.org/rss-specification
* Atom 1.0 https://www.ietf.org/rfc/rfc4287.txt
=== 注意
RSS ParserはRSS 0.9x/1.0/2.0, Atom 1.0 をサポートしていますが,RSS 0.90
はサポートしてませ... -
Dir
. open(path , encoding: Encoding . find("filesystem")) {|dir| . . . } -> object (1693.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
Dir
. new(path , encoding: Encoding . find("filesystem")) -> Dir (1393.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
Dir
. open(path , encoding: Encoding . find("filesystem")) -> Dir (1393.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
Array
# pack(template) -> String (1381.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
Array
# pack(template , buffer: String . new) -> String (1381.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
String
# unpack(template) -> Array (1381.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大... -
String
# casecmp(other) -> -1 | 0 | 1 | nil (1321.0) -
String#<=> と同様に文字列の順序を比較しますが、 アルファベットの大文字小文字の違いを無視します。
String#<=> と同様に文字列の順序を比較しますが、
アルファベットの大文字小文字の違いを無視します。
このメソッドの動作は組み込み変数 $= には影響されません。
String#casecmp? と違って大文字小文字の違いを無視するのは
Unicode 全体ではなく、A-Z/a-z だけです。
@param other self と比較する文字列
//emlist[例][ruby]{
"aBcDeF".casecmp("abcde") #=> 1
"aBcDeF".casecmp("abcdef") #=> 0
"aBcDeF".casecmp("abcd... -
String
# encode(encoding , from _ encoding , **options) -> String (1300.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを... -
Dir
. foreach(path , encoding: Encoding . find("filesystem")) {|file| . . . } -> nil (1273.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
Dir
. open(path) {|dir| . . . } -> object (1093.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
pack テンプレート文字列 (1081.0)
-
pack テンプレート文字列
pack テンプレート文字列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のように連続するテンプレート文字は
"i4"
と書き換えることができます。
テンプレート文字列中の空白類は無視されます。
また、`#' から改行あるいはテンプレート文字列の最後まではコメントとみな
され無視されます。... -
String
# encode(encoding , **options) -> String (1000.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを... -
Kconv
. # guess(str) -> Encoding | nil (997.0) -
文字列 str のエンコーディングを判定します。戻り値は Kconv の定数です。
文字列 str のエンコーディングを判定します。戻り値は
Kconv の定数です。
このモジュール関数で判定できるのは、
* ISO-2022-JP (Kconv::JIS)
* Shift_JIS (Kconv::SJIS)
* EUC-JP (Kconv::EUC)
* ASCII (Kconv::ASCII)
* UTF-8 (Kconv::UTF8)
* UTF-16BE (Kconv::UTF16)
* 不明 (Kconv::UNKNOWN)
* 以上のどれでもない (Kconv::BINARY)
のいずれかです。
@param str エンコー... -
Dir
. foreach(path , encoding: Encoding . find("filesystem")) -> Enumerator (973.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
rdoc (973.0)
-
RDoc は Ruby のドキュメント生成を行うためのライブラリです。rdoc という ドキュメント生成のためのコマンドも含んでいます。
RDoc は Ruby のドキュメント生成を行うためのライブラリです。rdoc という
ドキュメント生成のためのコマンドも含んでいます。
このパッケージは RDoc と Markup というふたつのコンポーネントを含
んでいます。 RDoc とは Ruby のソースファイルに対するドキュメントを生成
するアプリケーションです。 JavaDoc と同様に、ソースを解析し、クラス、モ
ジュール、メソッドの定義を抜き出してきます(include,require もです)。そ
してこれらの内容とその直前に書かれたコメントを併合し、ドキュメントを出
力します(現在は HTML しか出力できませんが、こ... -
Psych
:: Stream # start(encoding = Psych :: Nodes :: Stream :: UTF8) {|em| . . . } -> Psych :: Stream (928.0) -
Ruby オブジェクトを YAML document に変換するための準備をします。
Ruby オブジェクトを YAML document に変換するための準備をします。
変換された document は Psych::Stream.new で指定した
出力先に出力されます。
finish を呼び出すことで出力が完了します(finish を呼び出さないと
最後まで出力されない場合があります)。
ブロック付きで start を呼び出すと、変換準備を終えた Stream オブジェクト
(self) がブロックに渡され、ブロックが呼び出された後に finish を呼び出します。
これによって finish を確実に呼び出すことができます。
@param encoding 出... -
Net
:: HTTPHeader # each _ capitalized _ name {|name| . . . . } -> () (886.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
. open(filename , mode = "rb" , options = Hash . new) {|csv| . . . } -> nil (841.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
CSV
. open(filename , options = Hash . new) {|csv| . . . } -> nil (841.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
Dir
. new(path) -> Dir (793.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
Dir
. open(path) -> Dir (793.0) -
path に対するディレクトリストリームをオープンして返します。
path に対するディレクトリストリームをオープンして返します。
ブロックを指定して呼び出した場合は、ディレクトリストリームを
引数としてブロックを実行します。ブロックの実行が終了すると、
ディレクトリは自動的にクローズされます。
ブロックの実行結果を返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@rai... -
IO
. popen([env = {} , [cmdname , arg0] , *args , execopt={}] , mode = "r" , opt={}) {|f| . . . } -> object (787.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen([env = {} , cmdname , *args , execopt={}] , mode = "r" , opt={}) {|f| . . . } -> object (787.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , [[cmdname , arg0] , *args , execopt={}] , mode = "r" , opt={}) {|f| . . . } -> object (787.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , [cmdname , *args , execopt={}] , mode = "r" , opt={}) {|f| . . . } -> object (787.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , command , mode = "r" , opt={}) {|f| . . . } -> object (787.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
CSV
. foreach(path , options = Hash . new) {|row| . . . } -> nil (748.0) -
このメソッドは CSV ファイルを読むための主要なインターフェイスです。 各行が与えられたブロックに渡されます。
このメソッドは CSV ファイルを読むための主要なインターフェイスです。
各行が与えられたブロックに渡されます。
//emlist[例][ruby]{
require 'csv'
# UTF-32BE な CSV ファイルを読み込んで UTF-8 な row をブロックに渡します
CSV.foreach("a.csv", encoding: "UTF-32BE:UTF-8"){|row| p row }
//}
@param path CSV ファイルのパスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
... -
REXML
:: Instruction # content -> String | nil (712.0) -
XML 処理命令の内容を返します。
XML 処理命令の内容を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<?foobar?>
<root />
EOS
doc[2] # => <?p-i xml-stylesheet ...?>
doc[2].target # => "xml-stylesheet"
doc[2].content... -
String
# scrub {|bytes| . . . } -> String (712.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
String
# scrub! {|bytes| . . . } -> String (712.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
String
# encode(**options) -> String (700.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
self を指定したエンコーディングに変換した文字列を作成して返します。引数
を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな
くば self のエンコーディングが使われます。
無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
@param encoding 変換先のエンコーディングを表す文字列か Encoding オブジェクトを... -
Net
:: HTTPHeader # each {|name , val| . . . . } -> () (697.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 # each _ header {|name , val| . . . . } -> () (697.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 # each _ key {|name| . . . } -> () (697.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_name { |name| puts name }
# => accept-encoding
# => accept
# => user-agent
//} -
Net
:: HTTPHeader # each _ name {|name| . . . } -> () (697.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_name { |name| puts name }
# => accept-encoding
# => accept
# => user-agent
//} -
IO
. open(fd , mode = "r" , **opts) {|io| . . . } -> object (694.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
String
# scanf(format) {|*ary| . . . } -> Array (694.0) -
ブロックを指定しない場合、見つかった文字列を format に従って変 換し、そのオブジェクトの配列を返します。 format で指定した文字列が見つからない場合は空の配列を 生成して返します。
ブロックを指定しない場合、見つかった文字列を format に従って変
換し、そのオブジェクトの配列を返します。
format で指定した文字列が見つからない場合は空の配列を
生成して返します。
require 'scanf'
str = "123 abc 456 def 789 ghi"
p str.scanf("%d%s") #=> [123, "abc"]
ブロックを指定した場合は scanf を継続して実行し、順次
見つかった文字列を変換したオブジェクトの配列を引数に、ブロックを
実行します。このとき、ブロックの実行結果を要素とする配列を返します。
requir... -
CSV
. new(data , options = Hash . new) -> CSV (679.0) -
このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。
このメソッドは CSV ファイルを読み込んだり、書き出したりするために
String か IO のインスタンスをラップします。
ラップされた文字列の先頭から読み込むことになります。
文字列に追記したい場合は CSV.generate を使用してください。
他の位置から処理したい場合はあらかじめそのように設定した StringIO を渡してください。
@param data String か IO のインスタンスを指定します。
String のインスタンスを指定した場合、CSV#string を使用して
後からデータを取り出すことが出来ます。... -
Dir
. foreach(path) {|file| . . . } -> nil (673.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
IO
. popen("-" , mode = "r" , opt={}) {|io| . . . } -> object (667.0) -
第一引数に文字列 "-" が指定された時、fork(2) を 行い子プロセスの標準入出力との間にパイプラインを確立します。 親プロセスでは IO オブジェクトを返し、子プロセスでは nil を返します。
第一引数に文字列 "-" が指定された時、fork(2) を
行い子プロセスの標準入出力との間にパイプラインを確立します。
親プロセスでは IO オブジェクトを返し、子プロセスでは
nil を返します。
io = IO.popen("-", "r+")
if io # parent
io.puts "foo"
p io.gets # => "child output: foo\n"
io.close
else # child
s = gets
print "child output: " + s
... -
IO
. popen(env , "-" , mode = "r" , opt={}) {|io| . . . } -> object (667.0) -
第一引数に文字列 "-" が指定された時、fork(2) を 行い子プロセスの標準入出力との間にパイプラインを確立します。 親プロセスでは IO オブジェクトを返し、子プロセスでは nil を返します。
第一引数に文字列 "-" が指定された時、fork(2) を
行い子プロセスの標準入出力との間にパイプラインを確立します。
親プロセスでは IO オブジェクトを返し、子プロセスでは
nil を返します。
io = IO.popen("-", "r+")
if io # parent
io.puts "foo"
p io.gets # => "child output: foo\n"
io.close
else # child
s = gets
print "child output: " + s
... -
CSV
. generate(str = "" , options = Hash . new) {|csv| . . . } -> String (658.0) -
このメソッドは与えられた文字列をラップして CSV のオブジェクトとしてブロックに渡します。 ブロック内で CSV オブジェクトに行を追加することができます。 ブロックを評価した結果は文字列を返します。
このメソッドは与えられた文字列をラップして CSV のオブジェクトとしてブロックに渡します。
ブロック内で CSV オブジェクトに行を追加することができます。
ブロックを評価した結果は文字列を返します。
このメソッドに与えられた文字列は変更されるので、新しい文字列オブジェクトが必要な
場合は Object#dup で複製してください。
@param str 文字列を指定します。デフォルトは空文字列です。
@param options CSV.new のオプションと同じオプションを指定できます。
:encoding というキーを使用すると出力のエンコーディン... -
IO
. pipe {|read _ io , write _ io| . . . } -> object (649.0) -
pipe(2) を実行して、相互につながった2つの IO オブジェクトを要素とする配列を返します。
pipe(2) を実行して、相互につながった2つの
IO オブジェクトを要素とする配列を返します。
戻り値の配列は最初の要素が読み込み側で、次の要素が書き込み側です。
ブロックが渡された場合は、そのブロックに2つの IO オブジェクトが渡され、
ブロックの返り値がこのメソッドの返り値となります。
ブロック終了時に IO オブジェクトがもし close されていないならば
close します(close されていてるオブジェクトはそのままです)。
得られる2つの IO オブジェクトのエンコーディングを引数で指定することが
できます。
@param enc_str 読み込み側の外部エンコ... -
IO
. pipe(enc _ str , **opts) {|read _ io , write _ io| . . . } -> object (649.0) -
pipe(2) を実行して、相互につながった2つの IO オブジェクトを要素とする配列を返します。
pipe(2) を実行して、相互につながった2つの
IO オブジェクトを要素とする配列を返します。
戻り値の配列は最初の要素が読み込み側で、次の要素が書き込み側です。
ブロックが渡された場合は、そのブロックに2つの IO オブジェクトが渡され、
ブロックの返り値がこのメソッドの返り値となります。
ブロック終了時に IO オブジェクトがもし close されていないならば
close します(close されていてるオブジェクトはそのままです)。
得られる2つの IO オブジェクトのエンコーディングを引数で指定することが
できます。
@param enc_str 読み込み側の外部エンコ... -
IO
. pipe(ext _ enc) {|read _ io , write _ io| . . . } -> object (649.0) -
pipe(2) を実行して、相互につながった2つの IO オブジェクトを要素とする配列を返します。
pipe(2) を実行して、相互につながった2つの
IO オブジェクトを要素とする配列を返します。
戻り値の配列は最初の要素が読み込み側で、次の要素が書き込み側です。
ブロックが渡された場合は、そのブロックに2つの IO オブジェクトが渡され、
ブロックの返り値がこのメソッドの返り値となります。
ブロック終了時に IO オブジェクトがもし close されていないならば
close します(close されていてるオブジェクトはそのままです)。
得られる2つの IO オブジェクトのエンコーディングを引数で指定することが
できます。
@param enc_str 読み込み側の外部エンコ... -
IO
. pipe(ext _ enc , int _ enc , **opts) {|read _ io , write _ io| . . . } -> object (649.0) -
pipe(2) を実行して、相互につながった2つの IO オブジェクトを要素とする配列を返します。
pipe(2) を実行して、相互につながった2つの
IO オブジェクトを要素とする配列を返します。
戻り値の配列は最初の要素が読み込み側で、次の要素が書き込み側です。
ブロックが渡された場合は、そのブロックに2つの IO オブジェクトが渡され、
ブロックの返り値がこのメソッドの返り値となります。
ブロック終了時に IO オブジェクトがもし close されていないならば
close します(close されていてるオブジェクトはそのままです)。
得られる2つの IO オブジェクトのエンコーディングを引数で指定することが
できます。
@param enc_str 読み込み側の外部エンコ... -
IO
. read(path , **opt) -> String | nil (646.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
IO
. read(path , length = nil , **opt) -> String | nil (646.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
IO
. read(path , length = nil , offset = 0 , **opt) -> String | nil (646.0) -
path で指定されたファイルを offset 位置から length バイト分読み込んで返します。
path で指定されたファイルを offset 位置から
length バイト分読み込んで返します。
既に EOF に達している場合は nil を返します。ただし、length に nil か 0 が指定されている場合は、空文字列 "" を返します。例えば、IO.read(空ファイル) は "" を返します。
引数 length が指定された場合はバイナリ読み込みメソッド、そうでない場合はテキスト読み込みメソッドとして
動作します。
Kernel.#open と同様 path の先頭が "|" ならば、"|" に続くコマンドの出力を読み取ります。
@param path ファイル名を... -
CSV
. read(path , options = Hash . new) -> [Array] | CSV :: Table (643.0) -
CSV ファイルを配列の配列にするために使います。 headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。
CSV ファイルを配列の配列にするために使います。
headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。
@param path CSV ファイルのパスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
:encoding というキーを使用すると入力のエンコーディングを指定することができます。
入力のエンコーディングか Encoding.default_external と異なる場合は
必ず指定... -
CSV
. readlines(path , options = Hash . new) -> [Array] | CSV :: Table (643.0) -
CSV ファイルを配列の配列にするために使います。 headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。
CSV ファイルを配列の配列にするために使います。
headers オプションに偽でない値を指定した場合は CSV::Table オブジェクトを返します。
@param path CSV ファイルのパスを指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
:encoding というキーを使用すると入力のエンコーディングを指定することができます。
入力のエンコーディングか Encoding.default_external と異なる場合は
必ず指定... -
Psych
:: Stream # start(encoding = Psych :: Nodes :: Stream :: UTF8) -> Psych :: Stream (628.0) -
Ruby オブジェクトを YAML document に変換するための準備をします。
Ruby オブジェクトを YAML document に変換するための準備をします。
変換された document は Psych::Stream.new で指定した
出力先に出力されます。
finish を呼び出すことで出力が完了します(finish を呼び出さないと
最後まで出力されない場合があります)。
ブロック付きで start を呼び出すと、変換準備を終えた Stream オブジェクト
(self) がブロックに渡され、ブロックが呼び出された後に finish を呼び出します。
これによって finish を確実に呼び出すことができます。
@param encoding 出... -
CSV
. open(filename , mode = "rb" , options = Hash . new) -> CSV (541.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
CSV
. open(filename , options = Hash . new) -> CSV (541.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO オブジェクトをオープンして CSV でラップします。
これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
このメソッドは IO.open と同じように動きます。ブロックが与えられた場合は
ブロックに CSV オブジェクトを渡し、ブロック終了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。データをどのよう
に解析するか決定するため... -
yaml (541.0)
-
構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。
構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。
//emlist[例1: 構造化された配列][ruby]{
require 'yaml'
data = ["Taro san", "Jiro san", "Saburo san"]
str_r = YAML.dump(data)
str_l = <<~YAML_EOT
---
- Taro san
- Jiro san
- Saburo san
YAML_EOT
p str_r == str_l # => true
//}
... -
リテラル (523.0)
-
リテラル * num * string * backslash * exp * char * command * here * regexp * array * hash * range * symbol * percent
リテラル
* num
* string
* backslash
* exp
* char
* command
* here
* regexp
* array
* hash
* range
* symbol
* percent
数字の1や文字列"hello world"のようにRubyのプログラムの中に直接
記述できる値の事をリテラルといいます。
===[a:num] 数値リテラル
: 123
: 0d123
整数
: -123
符号つき整数
: 123.45
浮動小数点数。
.1 など "." で始まる浮動小... -
Ruby用語集 (505.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
IO
. popen([env = {} , [cmdname , arg0] , *args , execopt={}] , mode = "r" , opt={}) -> IO (487.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen([env = {} , cmdname , *args , execopt={}] , mode = "r" , opt={}) -> IO (487.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , [[cmdname , arg0] , *args , execopt={}] , mode = "r" , opt={}) -> IO (487.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , [cmdname , *args , execopt={}] , mode = "r" , opt={}) -> IO (487.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
IO
. popen(env = {} , command , mode = "r" , opt={}) -> IO (487.0) -
サブプロセスを実行し、そのプロセスの標準入出力 との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
サブプロセスを実行し、そのプロセスの標準入出力
との間にパイプラインを確立します。生成したパイプを IO オブジェクトとして返します。
p io = IO.popen("cat", "r+") # => #<IO:fd 4>
io.puts "foo"
io.close_write
p io.gets # => "foo\n"
サブプロセスを指定する方法は2通りあります。文字列を指定する場合と配列を指定する場合です。
文字列の場合は、シェルを経由して子プロセスを実行し、
配列の場合は、シェルを経由せずに子プロセスを実行します。
... -
CSV (469.0)
-
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
=== 読み込み
//emlist[][ruby]{
require "csv"
csv_text = <<~CSV_TEXT
Ruby,1995
Rust,2010
CSV_TEXT
IO.write "sample.csv", csv_text
# ファイルから一行ずつ
CSV.foreach("sample.csv") do |row|
p row
end
# => ["Ruby", "1995"]
# ["Rust", "2010"]
# ファイルから一度に
p CSV.r... -
String
# scrub -> String (412.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
String
# scrub! -> String (412.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
String
# scrub!(repl) -> String (412.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えます。常に self を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
String
# scrub(repl) -> String (412.0) -
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
self が不正なバイト列を含む場合に別の文字列に置き換えた新しい文字列を返します。
@param repl 不正なバイト列を置き換える文字列を指定します。省略した場合
は self の文字エンコーディングが Encoding::UTF_16BE,
Encoding::UTF_16LE, Encoding::UTF_32BE,
Encoding::UTF_32LE, Encoding::UTF_8 のいずれか
の場合は "\uFFFD" を表す文字で、それ以外の場合は "?" で置き
... -
OpenURI
:: Meta # meta -> Hash (409.0) -
ヘッダを収録したハッシュを返します。
ヘッダを収録したハッシュを返します。
//emlist[例][ruby]{
require 'open-uri'
open('http://example.com/') {|f|
p f.meta
#=> {"date"=>"Sun, 04 May 2008 11:26:40 GMT",
# "content-type"=>"text/html;charset=utf-8",
# "server"=>"Apache/2.0.54 (Debian GNU/Linux) mod_ssl/2.0.54 OpenSSL/0.9.7e",
# "transfer... -
WIN32OLE
_ VARIANT . new(val , vartype = nil) -> WIN32OLE _ VARIANT (409.0) -
指定したオブジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。
指定したオブジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。
@param val ラップするRubyオブジェクトを指定します。
@param vartype 省略時はWIN32OLEが自動型変換を行います。指定する場合は
WIN32OLE::VARIANTの定数を指定してください。
@return val引数を値として持つWIN32OLE_VARIANTオブジェクトを返します。
@raise TypeError val引数の型がArray、String、Integer、Float、Time、
WI... -
NEWS for Ruby 2
. 0 . 0 (397.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 1.9.3 以降の変更
=== 言語仕様の変更
* キーワード引数を追加しました
* %i, %I をシンボルの配列作成のために追加しました。(%w, %W に似ています)
* デフォルトのソースエンコーディングを US-ASCI... -
IO
. for _ fd(fd , mode = "r" , **opts) -> IO (394.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
IO
. new(fd , mode = "r" , **opts) -> IO (394.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
IO
. open(fd , mode = "r" , **opts) -> IO (394.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
オープン済みのファイルディスクリプタ fd に対する新しい
IO オブジェクトを生成して返します。
IO.open にブロックが与えられた場合、IO オブジェクトを生成しそれを引数としてブロックを
実行します。ブロックの終了とともに fd はクローズされます。ブロックの結果を返します。
IO.new, IO.for_fd はブロックを受け付けません。
=== キーワード引数
このメソッドは以下のキーワード引数を利用できます。
* :mode mode引数と同じ意味です
* :external_encoding 外部エンコーディング。"-" はデフォルト外部エンコーディングの
... -
String
# scanf(format) -> Array (394.0) -
ブロックを指定しない場合、見つかった文字列を format に従って変 換し、そのオブジェクトの配列を返します。 format で指定した文字列が見つからない場合は空の配列を 生成して返します。
ブロックを指定しない場合、見つかった文字列を format に従って変
換し、そのオブジェクトの配列を返します。
format で指定した文字列が見つからない場合は空の配列を
生成して返します。
require 'scanf'
str = "123 abc 456 def 789 ghi"
p str.scanf("%d%s") #=> [123, "abc"]
ブロックを指定した場合は scanf を継続して実行し、順次
見つかった文字列を変換したオブジェクトの配列を引数に、ブロックを
実行します。このとき、ブロックの実行結果を要素とする配列を返します。
requir... -
CSV
. generate _ line(row , options = Hash . new) -> String (373.0) -
このメソッドは一つの Array オブジェクトを CSV 文字列に変換するためのショートカットです。 複数行のCSVを扱う際はCSV#<<を使うとより高速です。
このメソッドは一つの Array オブジェクトを CSV 文字列に変換するためのショートカットです。
複数行のCSVを扱う際はCSV#<<を使うとより高速です。
このメソッドは可能であれば row に含まれる最初の nil でない値を用いて出力の
エンコーディングを推測します。
@param row 文字列の配列を指定します。
@param options CSV.new のオプションと同じオプションを指定できます。
:encoding というキーを使用すると出力のエンコーディングを指定することができます。
:row_sep ... -
Dir
. foreach(path) -> Enumerator (373.0) -
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ディレクトリ path の各エントリを表す文字列を引数として、ブロックを評価します。
ブロックが与えられなかった場合、各エントリを文字列として保持する
Enumerator オブジェクトを返します。
@param path ディレクトリのパスを文字列で指定します。
@param encoding ディレクトリのエンコーディングを文字列か
Encoding オブジェクトで指定します。省略した場合は
ファイルシステムのエンコーディングと同じになります。
@raise Errno::EXXX 失敗した場合に発生します。
//... -
IO
. popen("-" , mode = "r" , opt={}) -> IO (367.0) -
第一引数に文字列 "-" が指定された時、fork(2) を 行い子プロセスの標準入出力との間にパイプラインを確立します。 親プロセスでは IO オブジェクトを返し、子プロセスでは nil を返します。
第一引数に文字列 "-" が指定された時、fork(2) を
行い子プロセスの標準入出力との間にパイプラインを確立します。
親プロセスでは IO オブジェクトを返し、子プロセスでは
nil を返します。
io = IO.popen("-", "r+")
if io # parent
io.puts "foo"
p io.gets # => "child output: foo\n"
io.close
else # child
s = gets
print "child output: " + s
... -
IO
. popen(env , "-" , mode = "r" , opt={}) -> IO (367.0) -
第一引数に文字列 "-" が指定された時、fork(2) を 行い子プロセスの標準入出力との間にパイプラインを確立します。 親プロセスでは IO オブジェクトを返し、子プロセスでは nil を返します。
第一引数に文字列 "-" が指定された時、fork(2) を
行い子プロセスの標準入出力との間にパイプラインを確立します。
親プロセスでは IO オブジェクトを返し、子プロセスでは
nil を返します。
io = IO.popen("-", "r+")
if io # parent
io.puts "foo"
p io.gets # => "child output: foo\n"
io.close
else # child
s = gets
print "child output: " + s
...