當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。