我想让以下几行有效:
input = StringIO.new
input.write("test\ntest2")
IO.foreach(input) { |line| … }
我知道IO.foreach
需要文件说明。我可以将其转换为文件描述符或伪造它,使其以不同的方式工作吗?
答案 0 :(得分:1)
要在您写完StringIO
之后阅读,您需要使用seek
将其回滚到开头:
input = StringIO.new
input.write("test\ntest2")
input.seek(0)
input.each_line { |x| p x }
# "test\n"
# "test2"