在Apex中验证文件扩展名

时间:2014-01-23 05:24:39

标签: visualforce apex

最终用户可以在Visualforce页面中上传文件。在后端,我需要创建一个允许的文件扩展名列表,并将用户限制在该列表中。如何创建扩展列表并对其进行验证?很感谢任何形式的帮助。

1 个答案:

答案 0 :(得分:1)

你不需要顶点吗?

<apex:inputFile>包含accept参数,您可以使用该参数。请记住,这将检查contentType,而不是扩展(这是更正确的方式)。

如果您仍然需要在顶点验证 - 可能是这样的吗?

String fileName = 'foobar.xls';
Set<String> acceptedExtensions = new Set<String> {'.doc','.txt', '.jpg'};

Boolean found = false;
for(String s : acceptedExtensions){
    if(found = fileName.endsWith(s)){ // yes, there's only one "=", I do want assignment here
        break;
    }
}
if(!found){ // after the whole loop it's still false?
    ApexPages.addMessage(...);
}