Struts2图片文件上传,判断图片格式和图片大小
1. 配置Struts2能够上传的最大文件大小
使用Struts2进行文件上传的时候,Struts2默认文件大小最大为2MB,如果要传大一点的文件,就需要修改struts.xml配置文件,重新设置能够上传的最大的文件大小。配置文件如下:
private File imgFile; //这个是控件的name,你自己命名
private String imgFileFileName; //这个是文件名,Struts2会自动处理,按照Struts2约定命名即可
private String imgFileContentType; //这个是文件类型,如 image/jpg,按照Struts2约定命名即可
对于“***FileName”和“***ContentType”两个字段,Struts2会自动传递并赋值,当然你可以不设置这2个字段。
注意:通过imgFile.getFileName() 得到的文件名是 ****.tmp这样的临时文件,无法判断文件类型,因此,如果要判断文件类型,还是需要这两个字段的。
下面给出一段判断图片类型的代码:
/** 检测是否是图片文件 */ private boolean isImageFile() { boolean isImage = false; String[] imgExts = {".gif", ".jpg", ".jpeg",".bmp", ".png"}; for(String ext : imgExts) { if(imgFileFileName.toLowerCase().endsWith(ext)) { isImage = true; } } return isImage; }判断文件大小:imgFile.length()获取到的就是文件的大小,单位是B(Byte)
long length = imgFile.length();
String msg = "您上传的文件大小为:" + (length / 1024)+ "KB";