本文简要介绍ruby语言中 ARGF.each
的用法。
用法
each(sep=$/) {|line| block } → ARGF
each(sep=$/, limit) {|line| block } → ARGF
each(...) → an_enumerator
也别名为:each_line
返回一个枚举器,它遍历 ARGV
中每个文件的每一行(由 sep
分隔,默认为平台的换行符)。如果提供了一个块,则每一行将依次生成给该块,否则返回一个枚举器。可选的limit
参数是一个Integer
,指定每行的最大长度;较长的行将根据此限制进行拆分。
此方法允许您将命令行上提供的文件视为由每个命名文件的串联组成的单个文件。返回第一个文件的最后一行后,返回第二个文件的第一行。 ARGF.filename
和ARGF.lineno
方法可用于分别确定当前行的文件名和整个输入的行号。
例如,以下代码打印出每个命名文件的每一行,并以其行号为前缀,每个文件显示一次文件名:
ARGF.each_line do |line|
puts ARGF.filename if ARGF.file.lineno == 1
puts "#{ARGF.file.lineno}: #{line}"
end
而下面的代码一开始只打印第一个文件的名称,并通过所有命名文件计算带有行号的内容。
ARGF.each_line do |line|
puts ARGF.filename if ARGF.lineno == 1
puts "#{ARGF.lineno}: #{line}"
end
相关用法
- Ruby ARGF.each_byte用法及代码示例
- Ruby ARGF.each_line用法及代码示例
- Ruby ARGF.eof用法及代码示例
- Ruby ARGF.eof?用法及代码示例
- Ruby ARGF.external_encoding用法及代码示例
- Ruby ARGF.path用法及代码示例
- Ruby ARGF.rewind用法及代码示例
- Ruby ARGF.read用法及代码示例
- Ruby ARGF.inplace_mode =用法及代码示例
- Ruby ARGF.to_io用法及代码示例
- Ruby ARGF.set_encoding用法及代码示例
- Ruby ARGF.pos用法及代码示例
- Ruby ARGF.readlines用法及代码示例
- Ruby ARGF.binmode?用法及代码示例
- Ruby ARGF.lineno =用法及代码示例
- Ruby ARGF.filename用法及代码示例
- Ruby ARGF.file用法及代码示例
- Ruby ARGF.fileno用法及代码示例
- Ruby ARGF.to_i用法及代码示例
- Ruby ARGF.readbyte用法及代码示例
- Ruby ARGF.tell用法及代码示例
- Ruby ARGF.argv用法及代码示例
- Ruby ARGF.close用法及代码示例
- Ruby ARGF.lineno用法及代码示例
- Ruby ARGF.print用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 ARGF.each。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。