标签: ruby file-io
我有一个包含文件本身名称的文件的目录路径,但是文件的扩展名已删除。我有:
Path = "repository/something/306/072/437/985/825"
其中825是不带扩展名的文件的名称。该文件可以是.jpg或.txt扩展名。
825
.jpg
.txt
如果没有给我扩展名,我在ruby中找不到任何功能来检测文件的扩展名。反正这样做吗?
答案 0 :(得分:1)
您可能需要检测文件的MIME type。
在Linux中,您可以通过file --mime-type确定MIME。因此,一种方法是调用shell命令:
file --mime-type
mime = %x[file --mime-type #{path} | cut -d' ' -f2]
或者您可以使用mimemagic gem来做到这一点:
require 'mimemagic' MimeMagic.by_magic(File.open('image.jpg')).type # => "image/jpeg"