ライブラリ
クラス
-
ARGF
. class (48) - CSV (132)
-
CSV
:: Table (36) - Dir (12)
- ERB (24)
- File (12)
- IO (136)
-
JSON
:: Parser (12) - Module (12)
-
Net
:: HTTPResponse (48) - Object (30)
- Pathname (12)
- Socket (12)
- String (12)
- StringIO (84)
- Thread (42)
-
Thread
:: Backtrace :: Location (72)
キーワード
-
$ LAST _ READ _ LINE (12) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - CSV (12)
-
NEWS for Ruby 2
. 1 . 0 (12) -
NEWS for Ruby 2
. 2 . 0 (11) -
NEWS for Ruby 2
. 3 . 0 (10) -
NEWS for Ruby 2
. 5 . 0 (8) -
NEWS for Ruby 2
. 6 . 0 (7) -
NEWS for Ruby 3
. 0 . 0 (5) -
NEWS for Ruby 3
. 1 . 0 (4) - StringIO (12)
-
absolute
_ path (12) -
attr
_ reader (12) - backtrace (12)
-
base
_ label (12) - binread (24)
- body (12)
- cgi (12)
- closed? (12)
- connect (12)
- count (12)
- entity (12)
- filename (24)
- filename= (12)
- gets (12)
- inspect (36)
- instance (24)
- label (12)
- name= (10)
- new (12)
- open (50)
- path (24)
- pread (8)
- pwrite (8)
-
read
_ body (24) - readbyte (12)
- readchar (24)
- readline (48)
- readlines (96)
- readlink (12)
- reopen (24)
-
row
_ sep (12) - rss (12)
-
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 2 feature (12) -
ruby 1
. 8 . 3 feature (12) -
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12) - shift (12)
- source (12)
- syswrite (12)
- then (14)
-
to
_ csv (12) -
to
_ s (32) - write (24)
-
yield
_ self (16)
検索結果
先頭5件
-
ARGF
. class # read(length = nil , str = nil) -> String | nil (18238.0) -
ARGVに指定されたファイルを先頭のファイルからlengthバイト読み込み、 その文字列をstrに出力します。読み込んだ文字列を返します。
...tr 出力先の文字列。内容は上書きされます。
$ echo "small" > small.txt
$ echo "large" > large.txt
$ ruby glark.rb small.txt large.txt
ARGF.read # => "small\nlarge"
ARGF.read(200) # => "small\nlarge"
ARGF.read(2) # => "sm"
ARGF.read(0) # => ""
@see IO#read... -
Dir
# read -> String | nil (18238.0) -
ディレクトリストリームから次の要素を読み出して返します。最後の要素 まで読み出していれば nil を返します。
...][ruby]{
require 'tmpdir'
Dir.mktmpdir do |tmpdir|
File.open("#{tmpdir}/test1.txt", "w") { |f| f.puts("test1") }
File.open("#{tmpdir}/test2.txt", "w") { |f| f.puts("test2") }
Dir.open(tmpdir) do |d|
p d.read # => "."
p d.read # => ".."
p d.read # => "test1.txt"
p d.read......# => "test2.txt"
p d.read # => nil
end
end
//}... -
StringIO
# readchar -> String (9223.0) -
自身から 1 文字読み込んで、その文字に対応する String を返します。
...ら 1 文字読み込んで、その文字に対応する String を返します。
文字列の終端に到達した時には例外 EOFError を発生させます。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge")
a.readchar #=> "h"
//}
@raise EOFError EOFに達し... -
Readline
. # readline(prompt = "" , add _ hist = false) -> String | nil (9207.0) -
prompt を出力し、ユーザからのキー入力を待ちます。 エンターキーの押下などでユーザが文字列を入力し終えると、 入力した文字列を返します。 このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。 何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、 ユーザからの入力がない場合は nil を返します。
...:
require "readline"
input = Readline.readline
(プロンプトなどは表示せずに、入力待ちの状態になります。
ここでは「abc」を入力後、エンターキーを押したと想定します。)
abc
p input # => "abc"
input = Readline.readline("> ")
(">"......s
p input # => "ls"
input = Readline.readline("> ", true)
(">"を表示し、入力待ちの状態になります。
ここでは「cd」を入力後、エンターキーを押したと想定します。)
> cd
p input # => "cd"
input = Readline.readline("> ", true)
(">"を表示......と ruby インタプリタが終了し、端末状態を復帰しません。
これを回避するための例を2つ挙げます。
例: ^CによるInterrupt例外を捕捉して、端末状態を復帰する。
require 'readline'
stty_save = `stty -g`.chomp
begin
while buf = Readlin... -
StringIO
# readline(rs = $ / ) -> String (9207.0) -
自身から 1 行読み込んで、その文字列を返します。
...1 行読み込んで、その文字列を返します。
文字列の終端に到達した時には、例外 EOFError を発生させます。
IO#readline と違い読み込んだ文字列を変数 $_ にセットしません。
@param rs 行の区切りを文字列で指定します。rs に nil......プンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\nbar\n")
a.readline #=> "hoge\n"
a.readline(nil) #=> "foo\nbar\n"
a.readline #=> EOFError が発生する
//}... -
StringIO
# readlines(rs = $ / ) -> [String] (9207.0) -
自身からデータを全て読み込んで、その各行を要素としてもつ配列を返します。 既に文字列の終端に達していれば空配列 [] を返します。
...ise IOError 自身が読み込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge\nfoo\nbar\n")
a.readlines #=> ["hoge\n", "foo\n", "bar\n"]
a.readlines #=> []
//}
@see $/... -
StringIO
# readbyte -> Integer (9106.0) -
自身から 1 文字読み込んで、その文字に対応する整数を返します。
...対応する整数を返します。
文字列の終端に到達した時には例外 EOFError を発生させます。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge")
a.readbyte #=> 104
//}
@raise EOFError 文字列の終端に到達した時に発生します。... -
String
# count(*chars) -> Integer (9018.0) -
chars で指定された文字が文字列 self にいくつあるか数えます。
...数を数える文字のパターン
//emlist[例][ruby]{
p 'abcdefg'.count('c') # => 1
p '123456789'.count('2378') # => 4
p '123456789'.count('2-8', '^4-6') # => 4
# ファイルの行数を数える
n_lines = File.read("foo").count("\n")
# ファイルの末尾に改行......コードがない場合にも対処する
buf = File.read("foo")
n_lines = buf.count("\n")
n_lines += 1 if /[^\n]\z/ =~ buf
# if /\n\z/ !~ buf だと空ファイルを 1 行として数えてしまうのでダメ
//}... -
Net
:: HTTPResponse # read _ body(dest=nil) -> String|nil (6233.0) -
ブロックを与えなかった場合にはエンティティボディを 文字列で返します。 ブロックを与えた場合には エンティティボディを少しずつ取得して順次ブロックに 文字列で与えます。
...ずに一度に結果取得][ruby]{
require 'net/http'
uri = "http://www.example.com/index.html"
response = Net::HTTP.get_response(URI.parse(uri))
response.read_body[0..10] # => "<!doctype h"
//}
//emlist[例2 ブロックを与えて大きいファイルを取得][ruby]{
require 'net/http'
uri =......"/path/to/big.file", "w") do |f|
# Net::HTTP#request_get と Net::HTTPResponse#read_body で少しずつ読み書き。メモリ消費が少ない。
http.request_get(uri.path) do |response|
response.read_body do |s|
f.write(s)
end
end
end
end
//}
一度ブロッ......ボディを文字列として
返します。また一度ブロックを与えてこのメソッドを呼んだ場合には、
次からは Net::ReadAdapter のインスタンスが返ってきますが、
その場合はそのオブジェクトは使わないでください。
dest は obsolete...