2011-04-19 46 views

回答

1

看起来GIO的内容类型检测是基于文件扩展名(当存在扩展名时)。

$ ./file /bin/sh 
application/x-executable 
$ cp /bin/sh a.wav 
$ ./file a.wav 
audio/x-wav 

其中./file是

#!/usr/bin/env python2 
import sys, gio 
f = gio.File(sys.argv[1]) 
info = f.query_info('standard::content-type') 
print info.get_content_type() 
+0

我真的怀疑GIO使用的是文件工具。 – Lothar 2011-04-22 12:11:21

+0

这不是我正在说的....请参阅编辑。 – 2011-04-23 02:16:40

+0

它不完全基于扩展名:对于未知(或缺失)扩展名的文件,它将“嗅探”幻数内容 – MestreLion 2013-10-29 14:03:20

相关问题