るりまサーチ

最速Rubyリファレンスマニュアル検索!
96件ヒット [1-96件を表示] (0.017秒)

別のキーワード

  1. _builtin rewind
  2. prime rewind
  3. csv rewind
  4. stringio rewind
  5. io rewind

ライブラリ

クラス

モジュール

キーワード

検索結果

Zlib::GzipReader#rewind -> 0 (18119.0)

ファイルポインタを Zlib::GzipReader.new を呼び出した直後の 時点に戻します。関連付けられている IO オブジェクトに seek メソッドが定義されている必要があります。

...=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
gz.puts 'fuga'
}
=end

gz = Zlib::GzipReader.open('hoge.gz')
puts gz.gets #=> hoge
puts gz.gets #=> fuga
gz.rewind #=> 0
puts gz.gets #=> hoge
gz.close...

Dir#rewind -> self (18113.0)

ディレクトリストリームの読み込み位置を先頭に移動させます。

...レクトリストリームの読み込み位置を先頭に移動させます。

@raise IOError 既に自身が close している場合に発生します。

//emlist[例][ruby]{
Dir.open("testdir") do |d|
d.read # => "."
d.rewind # => #<Dir:0x401b3fb0>
d.read # => "."
end
//}...

StringIO.open(string = &#39;&#39;, mode = &#39;r+&#39;) -> StringIO (15120.0)

StringIO オブジェクトを生成して返します。

...ァとして使われます。StringIO#write などによって、
string 自身も書き換えられます。

@param mode Kernel.#open 同様文字列か整数で指定します。

@raise Errno::EACCES string がフリーズされていて、mode が書き込み可能に設定され...
...][ruby]{
require 'stringio'

s = "foo"
io = StringIO.new(s)
p io.getc # => 102
p io.pos # => 1
p io.size # => 3
io << "bar"
p io.size # => 4
p s # => "fbar"
io.rewind
p io.gets # => "fbar"

StringIO.open("hoge"){|io|
p io.string # => "hoge"
}
//}...

StringIO.open(string = &#39;&#39;, mode = &#39;r+&#39;) {|io| ... } -> object (15120.0)

StringIO オブジェクトを生成して返します。

...ァとして使われます。StringIO#write などによって、
string 自身も書き換えられます。

@param mode Kernel.#open 同様文字列か整数で指定します。

@raise Errno::EACCES string がフリーズされていて、mode が書き込み可能に設定され...
...][ruby]{
require 'stringio'

s = "foo"
io = StringIO.new(s)
p io.getc # => 102
p io.pos # => 1
p io.size # => 3
io << "bar"
p io.size # => 4
p s # => "fbar"
io.rewind
p io.gets # => "fbar"

StringIO.open("hoge"){|io|
p io.string # => "hoge"
}
//}...

IO (36.0)

基本的な入出力機能のためのクラスです。

...連のメソッドはエンコーディングの影響を受けません。
常に1バイトを単位として動作します。

例:

f = File.open('t.txt', 'r+:euc-jp')
p f.getc.encoding #=> Encoding::EUC_JP
p f.read(1).encoding #=> Encod...
...open や File.open
に渡すモードとともに指定するものと
生成後に IO#set_encoding を使って指定するものの二通りがあります。詳しくはそれぞれのメソッドの項を
参照して下さい。通常は前者の方法を使います。

例1:

f = File.open...
...('file1')
p f.getc.encoding #=> Encoding::EUC_JP

例2:

f = File.open('t.txt', 'w+:shift_jis:euc-jp')
f.write "\xB4\xC1\xBB\xFA" # 文字列 "漢字" の EUC-JP リテラル
f.rewind
s = f.read(4)
puts s.dump #=> "\x8A\xBF\x8E\x9A"...

絞り込み条件を変える

File#flock(operation) -> 0 | false (30.0)

ファイルをロックします。

...けません。
File.open("counter", File::RDWR|File::CREAT, 0644) {|f|
f.flock(File::LOCK_EX)
value = f.read.to_i + 1
f.rewind
f.write("#{value}\n")
f.flush
f.truncate(f.pos)
}

# 読み込みロック(read lock)を使用してカウンタを読み込み。
File.open("counter", "r") {|f...
...|
f.flock(File::LOCK_SH)
p f.read
}
//}

//emlist[例2:][ruby]{
f = File.open("/tmp/foo", "w")

f.flock(File::LOCK_EX)
puts "locked by process1"

fork {
f = File.open("/tmp/foo", "r")
f.flock(File::LOCK_SH)
puts "locked by process2"
sleep 5
puts "unlocked by process2"
}

sleep 5

f.flo...

StringIO.new(string = &#39;&#39;, mode = &#39;r+&#39;) -> StringIO (20.0)

StringIO オブジェクトを生成して返します。

...ァとして使われます。StringIO#write などによって、
string 自身も書き換えられます。

@param mode Kernel.#open 同様文字列か整数で指定します。

@raise Errno::EACCES string がフリーズされていて、mode が書き込み可能に設定され...
...][ruby]{
require 'stringio'

s = "foo"
io = StringIO.new(s)
p io.getc # => 102
p io.pos # => 1
p io.size # => 3
io << "bar"
p io.size # => 4
p s # => "fbar"
io.rewind
p io.gets # => "fbar"

StringIO.open("hoge"){|io|
p io.string # => "hoge"
}
//}...

Kernel$$stdin -> object (12.0)

標準入力です。

...クトしたいときは
$stdin に代入すれば十分です。

//emlist[例][ruby]{
# 標準入力の入力元 /tmp/foo に変更
$stdin = File.open("/tmp/foo", "r")
gets # 入力する
$stdin = STDIN # 元に戻す
//}

ただし、Kernel.#gets など、特定の組み込み...
..., rewind, fileno, to_io, eof, each_line, each_byte,
binmode, closed?

//emlist[例][ruby]{
$stdin = Object.new
def $stdin.gets
"foo"
end
p gets() # => "foo"
//}

自プロセスだけでなく、子プロセスの標準入力もリダイレクトしたいときは
以下のように IO#reopen...
...//emlist[例][ruby]{
$stdin.reopen("/tmp/foo")
//}

また、リダイレクトしたあと
入力先をまた元に戻したい場合は以下のようにします。

//emlist[例][ruby]{
stdin_old = $stdin.dup # 元の $stdin を保存する
$stdin.reopen("/tmp/foo") # $stdin を /tmp/...