获取给定文件的文件类型 - 基于内容

Posted

技术标签:

【中文标题】获取给定文件的文件类型 - 基于内容【英文标题】:Get file type of given file - based on contents 【发布时间】:2014-09-16 05:24:01 【问题描述】:

好的,这听起来可能相当简单,但我仍然不确定如何去做。

知道可以使用 UTI(例如 Get the type of a file in Cocoa)根据文件扩展名检查文件类型。

但是,我需要能够根据内容获取文件类型(更笼统地说,如“文本”、“图像”、“其他”)。

这可能吗?

有什么想法吗?

【问题讨论】:

【参考方案1】:

前进的一条途径是调用file 命令并解析其输出,但这相当可怕,我不会这样做,因为它很慢而且您很容易受到输出变化的影响。

file 命令使用a pretty extensive database of byte patterns 来测试文件的内容,我很想实现我自己的内部版本,或者使用this library(我认为在它工作之前可能需要一些工作OSX)。

【讨论】:

感谢您的建议!我正在调查它... :-)

以上是关于获取给定文件的文件类型 - 基于内容的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Javascript 中获取给定 url 的内容类型?

获取文件的 MimeType(内容类型)

如何在Windows中检索任何给定文件类型的默认图标?

C#按内容类型获取文件扩展名

python 通过给定目录统计所有的不同子文件类型及占用内存

文件属性操作