我正在尝试从本地磁盘读取文件的内容,如下所示:
content = File.read("C:\abc.rb","r")
当我执行rb文件时,我得到一个异常,因为错误:没有这样的文件或目录。我在这里缺少什么?
答案 0 :(得分:5)
在双引号字符串中,“\ a”是不可打印的bel字符。类似于“\ n”是换行符。 (我认为这些来自C)
您没有名为“C:< BEL> bc.rb”的文件,这就是您收到错误的原因。
要修复,请使用单引号,其中不会发生这些插值:
content = File.read('C:\abc.rb')
答案 1 :(得分:1)
首先:
尝试使用:
Dir.glob(".")
要查看目录中的内容(以及它正在查看的目录)。
open("C:/abc.rb", "rb") { |io| a = a + io.read }
编辑:除非您将文件连接在一起,否则您可以将其编写为:
data = File.open("C:/abc.rb", "rb") { |io| io.read }
答案 2 :(得分:1)
content = File.read("C:\/abc.rb","r")