你将如何创建一个可读的变量。它会从某个文件中读取它是否存在,否则会从标准输入中读取。就像这样:文件和标准输入之间的红宝石切换
input = File.open("file.txt") || in
这不起作用,但我认为这应该做的很多,但我找不到一个好办法做到这一点。
你将如何创建一个可读的变量。它会从某个文件中读取它是否存在,否则会从标准输入中读取。就像这样:文件和标准输入之间的红宝石切换
input = File.open("file.txt") || in
这不起作用,但我认为这应该做的很多,但我找不到一个好办法做到这一点。
这适用于你吗?
input = File.exist?("file.txt") ? File.open("file.txt") : STDIN
你也可以使用'$ stdin',而不是'STDIN'。 – bta 2010-01-19 23:35:53
我认为红宝石具有治疗未STDIN之前使用的参数是第一次使用就好像它是用于管道输送到标准输入文件名的能力。
尽管我讨厌隐晦的命名方案,但这非常有用。 – ezpz 2010-01-19 15:23:42
同意。那么,有ARGF。仍然神秘,但不像$ <。 – 2010-01-19 16:21:39