我正在使用 Ruby 和 Ruby on Rails 3,我想知道...
... 有什么区别
File.read("filename.txt")
和
IO.read("filename.txt")
?
编者注:这个答案已经过时了。从 Ruby 2.6 开始,File.read 的不同之处在于它不会为以“|”开头的文件名调用外部命令角色(问题,提交)。
由于File是IO的子类,没有read方法,调用File.read时实际上调用的是IO.read 这里没有区别。
File是IO的子类,File.read就是IO.read(File类没有这个方法,所以当read被调用时IO.read被调用)。