Ruby-File.open(text_file.txt)无法找到文件?

时间:2018-11-08 16:55:17

标签: ruby-on-rails ruby

这可能是一个简单的“导航目录”问题,因为我是新手。.

在名为tasks_lists.rb的文件中,我试图将文本文件中的文本保存到名为draft的变量中。

这是代码:

class FivePoints::Tasks


 attr_accessor :draft, :efile, :serve

  def self.start
    binding.pry
    draft = File.open("./text_files/draft.txt")
    efile = File.open("./text_files/efile.txt")
    serve = File.open("./text_files/serve.txt")
    self.new(draft, efile, serve)
  end

  def initialize(draft , efile, serve)
    @draft = draft
    @efile = efile
    @serve = serve
  end
end

我曾经尝试pry,但是没有运气。我还尝试了("../text_files/efile.txt")("/text_files/efile.txt")之类的变体。我还将附加目录树的图像。

enter image description here

我只是试图最终puts在CLI中为示例程序提供一些文本。该文本将在draft.txt文件中。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

假设您只想在本地运行它,然后找出文件的路径(可以从文件资源管理器中查看其属性),然后在代码中显式使用它。

找到确切的路径(如果您使用的是UNIX,则类似于/ home / USER / projects / five_points / bla ....),然后使用确切的完整路径替换字符串,您将能够根据需要打开文件

答案 1 :(得分:0)

看起来您的文件位于名为five_points的目录中,但是您的代码位于lib下,因此高出一级?

此外,您需要确保打开文件以进行追加。

draft = File.open("./five_points/text_files/draft.txt", "a")