当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby IO.foreach用法及代码示例


本文简要介绍ruby语言中 IO.foreach 的用法。

用法

foreach(name, sep=$/ [, getline_args, open_args]) {|line| block } → nil
foreach(name, limit [, getline_args, open_args]) {|line| block } → nil
foreach(name, sep, limit [, getline_args, open_args]) {|line| block } → nil
foreach(...) → an_enumerator
foreach(name, sep=$/ [, getline_args, open_args]) {|line| block } → nil
foreach(name, limit [, getline_args, open_args]) {|line| block } → nil
foreach(name, sep, limit [, getline_args, open_args]) {|line| block } → nil
foreach(...) → an_enumerator

为命名 I/O 端口中的每一行执行块,其中行由 sep 分隔。

如果没有给出块,则返回一个枚举器。

如果 name 以管道字符 ("|" ) 开头,并且接收者是 IO 类,则以与 Kernel#open 相同的方式创建子进程,并返回其输出。考虑使用 File.foreach 来禁用子进程调用的行为。

File.foreach("testfile") {|x| print "GOT ", x }
IO.foreach("| cat testfile") {|x| print "GOT ", x }

产生:

GOT This is line one
GOT This is line two
GOT This is line three
GOT And so on...

如果最后一个参数是散列,则它是要打开的关键字参数。有关getline_args 的详细信息,请参阅 IO.readlines 。有关open_args 的详细信息,另请参阅 IO.read

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 IO.foreach。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。