`

验证上传的文件是否允许

    博客分类:
  • SSH
阅读更多

/***
  * 验证上传的文件是否允许
  * @param forefile
  * @return
  */
 public static boolean validateFileType(FormFile formfile){
  if(formfile != null && formfile.getFileSize() > 0){
   List<String> arrowType = Arrays.asList("image/gif","image/jpg","image/bmp","image/png","image/jpeg","image/pjpeg"
     ,"application/x-shockwave-flash","text/plain","application/msword","application/pdf",
     "application/vnd.ms-powerpoint","application/vnd.ms-excel");
   String ext = formfile.getFileName().substring(formfile.getFileName().lastIndexOf(".")+1).toLowerCase();
   List<String> arrowExtension = Arrays.asList("gif","jpg","bmp","png","swf"
     ,"doc","txt","xls","pdf");
   return arrowType.contains(formfile.getContentType().toLowerCase())&&arrowExtension.contains(ext);
  }
  return true;
 }
 /***
  * 用属性文件的方式验证上传的文件是否合法
  */
 private static Properties properties = new Properties();
 static{
  try {//通过类加载器加载文件
   properties.load(BaseForm.class.getResourceAsStream("arrowuploadfiletype.properties"));
  } catch (IOException e) {
   e.printStackTrace();
  }
 }
 public static boolean validateFileType2(FormFile formfile){
  if(formfile != null && formfile.getFileSize() > 0){
   String ext = formfile.getFileName().substring(formfile.getFileName().lastIndexOf(".")+1).toLowerCase();
   List<String> arrowType = new ArrayList<String>();
   for(Object key : properties.keySet()){
    String value = (String)properties.get(key); 
    String[] values = value.split(",");
    for(String v : values){
     arrowType.add(v.trim());
    }
   }
   return arrowType.contains(formfile.getContentType().toLowerCase())&&properties.keySet().contains(ext);
  }
  return true;
 }

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics