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


Ruby IO.read用法及代码示例


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

用法

read(name, [length [, offset]] [, opt]) → string
read(name, [length [, offset]] [, opt]) → string

打开文件,可选择查找给定的 offset ,然后返回 length 字节(默认为文件的其余部分)。 read 确保文件在返回之前关闭。

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

选项

选项哈希接受以下键:

:编码

字符串或编码

指定读取字符串的编码。如果指定了length,将忽略:encoding。有关可能的编码,请参阅 Encoding.aliases

:模式

字符串或整数

指定open() 的mode 参数。它必须以“r” 开头,否则会导致错误。有关可能模式的列表,请参阅 IO.new

:open_args

数组

将 open() 的参数指定为数组。此 key 不能与 :encoding:mode 结合使用。

例子:

File.read("testfile")            #=> "This is line one\nThis is line two\nThis is line three\nAnd so on...\n"
File.read("testfile", 20)        #=> "This is line one\nThi"
File.read("testfile", 20, 10)    #=> "ne one\nThis is line "
File.read("binfile", mode: "rb") #=> "\xF7\x00\x00\x0E\x12"
IO.read("|ls -a")                #=> ".\n..\n"...

相关用法


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