2011-03-24 78 views
1

我有一个FileReference的小问题,我用它来让用户从他们的计算机中选择一个文件并将其上传到服务器。FileReference在Mac上不接受PNG

我只允许通过构造函数使用FileFilter为所有Windows计算机定义上传的PNG和JPEG文件。 问题是,mac系统(或generell中的unix)不仅使用文件扩展名,而且还在文件头中读取某些文件类型。

这就是属性macType适用于AS3中的FileFilter类。

var fileFilter:FileFilter; 

fileFilter = new FileFilter("PNG, JPG", "*.jpg;*jpeg;*png"); 
fileFilter.macType = "JPEG;jp2_;PNGf"; 

var fileReference = new FileReference(); 

fileReference.addEventListener(Event.SELECT, onFilesSelected); 
fileReference.browse([fileFilter]); 

所以我的问题是,在Mac上的用户只能选择JPG文件,Mac不会允许PNG文件。有人知道正确的macType还是我错过了什么?

回答

3

你缺少你描述一个时期:

new FileFilter("PNG, JPG", "*.jpg;*.jpeg;*.png"); 
+0

哦,我的上帝!谢谢。我想,一旦你开始沉迷于一个问题,你完全错过了显而易见的事情。 – Mathias 2011-03-24 11:52:51

+1

http://c2.com/cgi/wiki?RubberDucking;) – Kodiak 2011-03-24 12:15:53