新手跪求大神,jsp图片上传规定上传格式
本人想写一个网页,带有上传图片功能,规定上传文件的格式为图片,在选择本地图片的对话框中,不显示非图片格式的文件,本人新手,跪求解决。 jsp 上传 图片
[解决办法]
组件smartupload 加入包smartupload.jar
SmartUpload su = new SmartUpload();
long maxsize = 2 * 1024 * 1024; // 设置每个上传文件的大小,为2MB
String allowedFilesList = "jpg,gif,bmp";
String denidFilesList = "exe,bat,jsp,htm,html,,";
try {
su.initialize(this.getServletConfig(), request, response); //初始化
su.setMaxFileSize(maxsize); // 限制上传文件的大小
su.setAllowedFilesList(allowedFilesList); // 设置允许上传的文件类型
su.setDeniedFilesList(denidFilesList);
su.upload(); // 上传文件
String photoInfo = su.getRequest().getParameter("info"); //必须这样来获取request
if(photoInfo==null
[解决办法]
photoInfo.equals("")){ //验证照片描述信息,若没有输入,则提示输入照片描述信息
messages="请输入照片描述信息!";
forward="/admin/error.jsp";
}else{
File file = su.getFiles().getFile(0); // 获取上传的文件,因为只上传了一个文件,所以可直接获取
if (!file.isMissing()) { // 如果选择了文件
String now = new Date().getTime() + ""; //获取当前时间并格式化为字符串
String photoAddr=filePath + now + "."+file.getFileExt(); //filePath值
file.saveAs(photoAddr,File.SAVEAS_VIRTUAL);
}else{
messages="请选择要上传的文件!";
forward="/admin/error.jsp";
}
}
}catch (java.lang.SecurityException e){
messages="<li>上传文件失败!上传的文件类型只允许为:jpg,gif,bmp</li>";
forward="/admin/error.jsp";
}catch (SmartUploadException e) {
messages="上传文件失败!";
forward="/admin/error.jsp";
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}