我使用这个Ruby窍门与__END__和DATA将一些数据放在我的程序文件中:
class Foo def initialize() puts DATA.read.inspect end end puts DATA.read.inspect Foo.new __END__ test
"test" ""
我假设DATA在全球范围内是一样的,但是在课堂里没有内容.如何在__END__之内访问数据(除了使用全局变量的明显而丑的解决方案之外)?
ADDED:我看到第二次读数据两次给我什么.我可以使用倒带重新开始,但阅读然后给我我的程序的整个源代码.有没有更简单的方法可以在__END__之后的部分继续使用DATA,或者我会更好地阅读它,并将其存储在其他地方以备将来使用?