2014-01-30 38 views
1

我想通過在紅寶石如何使用路徑在紅寶石由函數IO.readlines(「路徑」)[0]

IO.readlines("path")[0] 

但是文件中使用以下函數來讀取文件的第一行是在沒有讀取文件當前目錄,所以我用路徑有

puts IO.readlines("Home/Documents/vikas/SHIF.doc") 

但它給錯誤的

a1.rb:1:in `readlines': No such file or directory @ rb_sysopen - Home/Documents/vikas/SHIF.doc (Errno::ENOENT) 
    from a1.rb:1:in `<main>' 
+0

給出的路徑不以「/」或驅動器標識開始(如果你在Windows中是),所以它是一個相對路徑。 – SirDarius

回答

1

你也可以打開一個文件和只讀的第l INE整個文件,而不是

File.open("Home/Documents/vikas/SHIF.doc").readline 
0

您可以使用File.expand_path

puts IO.readlines(File.expand_path("Home/Documents/vikas/SHIF.doc", __FILE__)) 

不過請注意,它會創建路徑相對於文件目錄,而不是根目錄。

如果您正在使用的軌道,你可以使用:

puts IO.readlines(Rails.root.join 'Home', 'Documents', 'vikas', 'SHIF.doc')