在Python中如何为文件设置资源分支以在Mac OS X下打开另一个应用程序
在Mac OS X系统下,我创建了一个扩展名为“.log”(或者“.txt”)的文本文件。之前我可以通过一些代码强制让这个文件在点击时用Excel打开,而不是用文本编辑器或控制台打开:
pathlog=os.path.join(d, "output.log")
log = open(pathlog, "w")
...
log.close()
os.system("SetFile -t 'XLS ' -c XCEL %s" % pathlog)
可惜的是,这个方法以前有效,但在新的Mac OS X版本(我用的是10.6)中不再有效了:当我点击这个文件时,它还是会用文本编辑器打开。如果我把文件名改成一个不常见的扩展名(比如“.logx”),那就能正常用Excel打开。但我希望能保留“.log”这个扩展名,更确切地说,不想把它改成“.xls”或“.csv”。
在Finder中,在文件属性里,我需要选择“始终用Microsoft Excel.app打开”,这样就会为这个文件设置一个资源分支。
所以我的问题是:如何用Python写出“始终用这个程序打开”的代码,以便给文件添加一个资源分支,让它强制用不同于扩展名所指示的应用程序打开?
谢谢你的帮助,
埃里克。
1 个回答
0
简而言之,你可能无法通过脚本轻松做到这一点。
不过,你可以通过命令行来实现。详细信息可以查看这个链接:Mac的创建者签名和文件类型
但是,Snow Leopard(雪豹系统)改变了创建者和类型代码的工作方式,所以上面的链接对于10.6和10.7版本来说已经过时了。