Techioz Blog

File.exists?() は true であるべきときに false を返しますか?

概要

これはすべて間違っていると思いますが、bar/ の子であるディレクトリ foo/ にいて、次のようにします。

File.exists?(“../somefile.rb”)

true であるべきときに false を返します…間違ったことをしていない限り:

bar/
  somefile.rb
  foo/
    someotherfile.rb

someotherfile.rb は、somefile.rb が存在するかどうかを確認するコードを含むものです。

私の何が間違っているのでしょうか - 開くことができるように、ファイルが存在するかどうかを確認しようとしています。

解決策

プロセスにファイルが存在するかどうかを判断する権限がない場合は、false が返されます。ファイルを開くことはできるかもしれませんが、通常の方法ではファイルが存在するかどうかを判断することはできません。

ソース:- ファイルが存在する場合、File.exists() は false を返します