从$ stdin读取整行而不用水晶朗入

时间:2017-07-20 13:06:45

标签: crystal-lang

这是Read a single char from stdin without pressing enter

的类似问题

如何用水晶朗读整行?我假设使用以下Ruby等效代码:

lines = $stdin.read
lines.each{|line| puts line}

3 个答案:

答案 0 :(得分:2)

同样,您使用STDIN.raw,但这次您想使用IO#gets一次获取整行。最简单的方法是:

while line = STDIN.raw &.gets
  puts line
end

或者你可以这样做:

STDIN.raw do |stdin|
  stdin.each_line do |line|
    puts line
  end
end

答案 1 :(得分:1)

将此代码与在线编译器一起使用

我刚刚直接使用STDIN

STDIN.each_line do |line|
  puts line
end

答案 2 :(得分:0)

显然read等于STDIN.gets_to_end FWIW。

https://groups.google.com/forum/#!topic/crystal-lang/O4DExFHJc5E