Ruby 如何清除'StringIO'实例?
如何清除Ruby 如何清除'StringIO'实例?,ruby,stringio,Ruby,Stringio,如何清除StringIO实例?在我写入和读取字符串io之后,我想清除它 require "stringio" io = StringIO.new io.write("foo") io.string #=> "foo" # ... After doing something ... io.string #=> Expecting "" 我尝试了刷新和倒带,但仍然得到相同的内容。查找或倒带仅影响下一次读/写操作,而不影响内部存储器的内容 您可以像这样使用: 我使用截断和倒带。倒带是为下
StringIO
实例?在我写入和读取字符串io之后,我想清除它
require "stringio"
io = StringIO.new
io.write("foo")
io.string #=> "foo"
# ... After doing something ...
io.string #=> Expecting ""
我尝试了
刷新
和倒带
,但仍然得到相同的内容。查找
或倒带
仅影响下一次读/写操作,而不影响内部存储器的内容
您可以像这样使用:
我使用
截断
和倒带
。倒带是为下一步操作准备io所必需的
io.truncate(0)
io.rewind
它似乎也能起作用:
io.string#=>foo;io.重新开放(“”);io.string#=>“”
。是吗?@CarySwoveland,谢谢你的评论。我不知道。我相应地更新了答案。
io.reopen("")
io.string
# => ""
io.truncate(0)
io.rewind