Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > stringioライブラリ > StringIOクラス > ungetc

instance method StringIO#ungetc

ungetc(ch) -> nil[permalink][rdoc]

整数で指定された文字 ch を自身に書き戻します。 nil を返します。

何回でも書き戻すことが可能です。 現在位置が自身のサイズよりも大きい場合は、自身をリサイズしてから、ch を書き戻します。 また現在位置が 0 である場合は何も行いません。

[PARAM] ch:
書き戻したい文字を整数で指定します。複数の文字を書き戻す事も できます。
[EXCEPTION] IOError:
自身が読み込み可能でない時に発生します。
s = StringIO.new("hoge")
s.pos = 1
s.ungetc(?H)
p s.string   #=> "Hoge"
p s.pos        #=> 0

s = StringIO.new("hoge")
s.pos = 8
s.ungetc(?A)
p s.string   #=> "hoge\000\000\000A"
p s.pos        #=> 7