【问题标题】:get path of a file that lives in desktop using rails使用 rails 获取桌面中文件的路径
【发布时间】:2020-02-04 22:36:20
【问题描述】:

我想保存位于桌面中的文件的路径,但似乎 Rails 无法通过指定的路径识别它。我试过这个:

 def calculate_hash
    require 'digest'
    file_path = "Users/crs/Desktop/index.xml"
    sha1 = Digest::SHA1.file file_path
    puts "Checksum SHA1: #{sha1.hexdigest}"
  end

如果我运行此方法,我会收到一条错误消息“No such file or directory @ rb_sysopen - /Users/crsDesktop/index.xml " 请帮助我如何让它变得可识别。

【问题讨论】:

  • 它是否适用于file_path = "~/Users/crs/Desktop/index.xml"
  • 该错误与您打开的内容不匹配。你能仔细检查你在做什么并验证它来自这个代码吗?

标签: ruby hash ruby-on-rails-5 digest-authentication


【解决方案1】:

由于Users 是根目录,您必须指定完整路径:

file_path = "/Users/crs/Desktop/index.xml"

注意/ 前缀。

另外需要注意的是路径使用斜杠 (/) 和 not 反斜杠 (\\)。如果您不小心使用了反斜杠,它在大多数情况下会“消失”:

file_path = "/Users/crs\Desktop/index.xml"
# => "/Users/crsDesktop/index.xml"

其中\D 在双引号字符串中具有特殊含义,在这种情况下表示文字大写D

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-21
    • 1970-01-01
    • 2018-09-02
    • 1970-01-01
    • 1970-01-01
    • 2016-05-03
    • 2011-06-24
    • 2018-07-22
    相关资源
    最近更新 更多