ディレクトリではないはずなのに、"Is a directory" というエラーが出る
ディレクトリ内のファイルを読み込み、ファイルの内容を出力するプログラムを組んでいるのですが、
in `read': Is a directory
というエラーが出てしまいます。
おそらく、「それはディレクトリですよ」と言っていると思うのですが、その前のif
文でファイルであることを確認してから処理を行なっているため、ディレクトリでなく、テキストファイルのパスであるはずです。
何故このようなエラーになってしまうのでしょうか。
ソースコード
require "find.rb"
Find::find("/Users/tamada/Desktop/修論Dev/レシピデータパース用素材/テストデータ/recipe/") do |path|
if FileTest.file?(path) || FileTest.readable?(path) then
# p "ファイル:" + path
file = open(path)
text = file.read
p text
file.close
end
end