推荐答案
在 Ruby 中,File 类提供了许多用于文件操作的常用方法。以下是一些常用的方法:
File.open(filename, mode): 打开文件并返回一个File对象。mode参数指定文件的打开模式(如"r"表示只读,"w"表示写入等)。File.read(filename): 读取文件内容并返回一个字符串。File.write(filename, data): 将数据写入文件。如果文件不存在,则创建文件;如果文件已存在,则覆盖文件内容。File.exist?(filename): 检查文件是否存在,返回布尔值。File.delete(filename): 删除指定的文件。File.size(filename): 返回文件的大小(以字节为单位)。File.rename(oldname, newname): 重命名文件。File.directory?(filename): 检查路径是否为目录,返回布尔值。File.file?(filename): 检查路径是否为文件,返回布尔值。File.mtime(filename): 返回文件的最后修改时间。
本题详细解读
File.open(filename, mode)
File.open 是 Ruby 中用于打开文件的主要方法。它接受两个参数:文件名和打开模式。常见的模式包括:
"r": 只读模式(默认)。"w": 写入模式,如果文件存在则覆盖,不存在则创建。"a": 追加模式,如果文件存在则在文件末尾追加内容,不存在则创建。"r+": 读写模式,文件指针在文件开头。"w+": 读写模式,如果文件存在则覆盖,不存在则创建。"a+": 读写模式,文件指针在文件末尾。
File.read(filename)
File.read 方法用于读取整个文件内容并返回一个字符串。它适用于读取较小的文件,因为大文件可能会导致内存问题。
File.write(filename, data)
File.write 方法用于将数据写入文件。如果文件不存在,它会创建文件;如果文件已存在,它会覆盖文件内容。data 参数可以是字符串或二进制数据。
File.exist?(filename)
File.exist? 方法用于检查文件是否存在。它返回一个布尔值,true 表示文件存在,false 表示文件不存在。
File.delete(filename)
File.delete 方法用于删除指定的文件。如果文件不存在,会抛出 Errno::ENOENT 异常。
File.size(filename)
File.size 方法返回文件的大小,以字节为单位。如果文件不存在,会抛出 Errno::ENOENT 异常。
File.rename(oldname, newname)
File.rename 方法用于重命名文件。它将 oldname 文件重命名为 newname。如果 newname 文件已存在,它会被覆盖。
File.directory?(filename)
File.directory? 方法用于检查给定的路径是否为目录。它返回一个布尔值,true 表示路径是目录,false 表示不是。
File.file?(filename)
File.file? 方法用于检查给定的路径是否为文件。它返回一个布尔值,true 表示路径是文件,false 表示不是。
File.mtime(filename)
File.mtime 方法返回文件的最后修改时间。它返回一个 Time 对象,表示文件的最后修改时间。