ライブラリ
- ビルトイン (1)
- csv (1)
-
net
/ protocol (1) - openssl (2)
-
rexml
/ document (3) -
rinda
/ rinda (1) -
rinda
/ tuplespace (2) -
rubygems
/ package / tar _ writer (4) - socket (2)
- stringio (1)
- zlib (1)
キーワード
- BoundedStream (1)
- CSV (1)
- Default (1)
- FileOverflow (1)
- GzipWriter (1)
- IO (1)
- InvalidHashTupleKey (1)
- Pretty (1)
- RSA (1)
- RestrictedStream (1)
- SSLSocket (1)
- StringIO (1)
- TCPServer (1)
- TCPSocket (1)
- TarWriter (1)
- Transitive (1)
- TupleEntry (1)
- TupleSpace (1)
- WriteTimeout (1)
検索結果
先頭5件
-
Net
:: WriteTimeout (18040.0) -
データを書き込むときにタイムアウトしたときに発生する例外です。
データを書き込むときにタイムアウトしたときに発生する例外です。
タイムアウトまでの時間は Net::HTTP#write_timeout=、
Net::FTP#write_timeout= などで設定します。 -
Zlib
:: GzipWriter (18040.0) -
gzip 形式の圧縮ファイルを書き出すラッパークラスです。 IO クラスのインスタンス (又は IO クラスのインスタンスと同じメソッドを 持つオブジェクト) と関連付けて使用します。
gzip 形式の圧縮ファイルを書き出すラッパークラスです。
IO クラスのインスタンス (又は IO クラスのインスタンスと同じメソッドを
持つオブジェクト) と関連付けて使用します。
require 'zlib'
Zlib::GzipWriter.open('hoge.gz') {|gz|
gz.write 'jugemu jugemu gokou no surikire...'
}
f = File.open('hoge.gz', 'w')
gz = Zlib::GzipWriter.new(f)
gz.write 'jugemu jugemu g... -
Gem
:: Package :: TarWriter (18004.0) -
tar ファイルを書き込むためのクラスです。
tar ファイルを書き込むためのクラスです。 -
Gem
:: Package :: TarWriter :: RestrictedStream (9052.0) -
write メソッドのみを提供する IO のラッパークラスです。
write メソッドのみを提供する IO のラッパークラスです。 -
Gem
:: Package :: TarWriter :: BoundedStream (9004.0) -
データサイズの上限がある IO のラッパークラスです。
データサイズの上限がある IO のラッパークラスです。 -
Gem
:: Package :: TarWriter :: FileOverflow (9004.0) -
上限サイズを越えて書き込もうとした場合に発生する例外です。
上限サイズを越えて書き込もうとした場合に発生する例外です。 -
StringIO (76.0)
-
文字列に IO と同じインタフェースを持たせるためのクラスです。
文字列に IO と同じインタフェースを持たせるためのクラスです。
//emlist[例][ruby]{
require "stringio"
sio = StringIO.new("hoge", 'r+')
p sio.read #=> "hoge"
sio.rewind
p sio.read(1) #=> "h"
sio.write("OGE")
sio.rewind
p sio.read #=> "hOGE"
//}
=== 例外
StringIO オブジェクトは大抵の場合 IO オブジェクトと同... -
IO (58.0)
-
基本的な入出力機能のためのクラスです。
基本的な入出力機能のためのクラスです。
File::Constants は、File から IO へ移動しました。
===[a:m17n] 多言語化と IO のエンコーディング
IO オブジェクトはエンコーディングを持ちます。
エンコーディングの影響を受けるメソッドと受けないメソッドがあります。
影響を受けるメソッドでは、IO のエンコーディングに従い読み込まれた文字列のエンコーディングが決定されます。
また IO のエンコーディングを適切に設定することにより、読み込み時・書き込み時に文字列のエンコーディングを
変換させることもできます。
==== エンコーディングの影響を受けるメ... -
REXML
:: Formatters :: Default (58.0) -
XMLドキュメントを(文字列として)出力するクラスです。
XMLドキュメントを(文字列として)出力するクラスです。
REXML::Formatters::Pretty と
異なりテキストの改行や空白を修正せずにそのまま出力します。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/default'
doc = REXML::Document.new <<EOS
<root>
<children>
<grandchildren/>
</children>
</root>
EOS
default_formatter = REXML::Formatters::... -
Rinda
:: InvalidHashTupleKey (52.0) -
Rinda::TupleSpace#write などで不正なハッシュテーブル(キーが 文字列でないもの)をタプルスペースに書き込もうとすると発生すると発生する 例外です。
Rinda::TupleSpace#write などで不正なハッシュテーブル(キーが
文字列でないもの)をタプルスペースに書き込もうとすると発生すると発生する
例外です。 -
OpenSSL
:: PKey :: RSA (40.0) -
RSA 暗号鍵のクラスです。
RSA 暗号鍵のクラスです。
通常このクラスで利用するのは、
OpenSSL::PKey::RSA.generate, OpenSSL::PKey::RSA.new,
OpenSSL::PKey::RSA#public?, OpenSSL::PKey::RSA#private?,
OpenSSL::PKey::RSA#public_key, OpenSSL::PKey::RSA#to_text,
OpenSSL::PKey::RSA#to_pem, OpenSSL::PKey::RSA#to_der
のいずれかでしょう。これ以外のメソッドを利用するときは
RSA についてよく理解し、必要な場... -
OpenSSL
:: SSL :: SSLSocket (40.0) -
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
=== 例
SSL/TLS サーバに接続して write します。
require 'socket'
require 'openssl'
include OpenSSL
soc = TCPSocket.new('www.example.com', 443)
ssl = SSL::SSLSocket.new(soc)
ssl.connect
ssl.post_connection_check('www.example.com')
raise "verification er... -
REXML
:: Formatters :: Transitive (40.0) -
XMLドキュメントをテキストの内容を変えずに 多少の整形を加えて出力するクラスです。
XMLドキュメントをテキストの内容を変えずに
多少の整形を加えて出力するクラスです。
これが有用な場合はあまりないでしょう。
整形されていない XML を整形したいが、
テキストの空白は改行は変えたくない場合には役にたつかもしれません。
ただ、ほとんどの場合は奇妙な出力結果になるでしょう。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/transitive'
doc = REXML::Document.new <<EOS
<root><children>
<grandchildren foo='ba... -
TCPServer (40.0)
-
TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
このクラスによって簡単にソケットを利用したサーバのプログラミングができます。
例えば echo サーバは以下のようになります。
require "socket"
gs = TCPServer.open(0)
socks = [gs]
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))
while true
nsock = select(socks)
next if nsock ==... -
CSV (22.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... -
REXML
:: Formatters :: Pretty (22.0) -
XMLドキュメントを(文字列として)見た目良く出力するクラスです。
XMLドキュメントを(文字列として)見た目良く出力するクラスです。
REXML::Formatters::Default と
異なり見た目のためテキストの改行や空白を修正して出力します。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/pretty'
doc = REXML::Document.new <<EOS
<root>
<children>
<grandchildren foo='bar'/>
</children>
</root>
EOS
pretty_formatter = REXM... -
Rinda
:: TupleEntry (22.0) -
タプルスペース内に含まれるタプルを管理するためのクラスです。 タプルの有効期限を管理し、タプルのキャンセル操作ができます。
タプルスペース内に含まれるタプルを管理するためのクラスです。
タプルの有効期限を管理し、タプルのキャンセル操作ができます。
Rinda::TupleSpace#write はこのオブジェクトを返し、
それを利用してタプルを明示的にキャンセルすることができます。
ただし、タプルスペースのあるプロセスがタプルを投入したプロセスと
異なる場合、これを受け取る側はリモートオブジェクトによって
このオブジェクトを参照します。そのためタプルスペースのプロセス側では
参照切れによるGCが発生し、TupleEntryオブジェクトが消滅してしまうかもしれません。
これを防ぐには何らかの仕掛けが必要でしょう。... -
Rinda
:: TupleSpace (22.0) -
Tuple Space を表すクラスです。
Tuple Space を表すクラスです。
このクラスのインスタンスを
drb を経由して公開することで
タプルスペースを他のプロセスからアクセスさせることができるようになります。
タプルスペースを drb 経由で利用する側は
DRb::DRbObject.new_with_uri などでこのオブジェクトのリモートオブジェクトを
取得し、Rinda::TupleSpaceProxy をかぶせることで利用します。
===[a:renewer] タプルの寿命と renewer
タプルを Rinda::TupleSpace#write などで追加するときにその寿命を
秒数で指定することができ... -
TCPSocket (22.0)
-
インターネットドメインのストリーム型ソケットのクラスです。
インターネットドメインのストリーム型ソケットのクラスです。
通常のIO クラスのサブクラスと同
様の入出力ができます。このクラスによってソケットを用いたクラ
イアントを簡単に記述できるようになります。
ユーザの入力をそのままサーバに転送するプログラムは以下の
ようになります。
require "socket"
port = if ARGV.size > 0 then ARGV.shift else 4444 end
print port, "\n"
s = TCPSocket.open("localhost", port)
while gets
...