jsp第五章JSP中的文件操作.ppt
jsp第五章第五章JSP中的文中的文件操作件操作中国网页设计中国网页设计第第5章章 JSP中的文件操作 JSP JSP通过通过JavaJava的输入的输入/ /输出流来实现文件的读输出流来实现文件的读写操作。写操作。 中国网页设计:http:/ 个访问本网站的客户。中国网页设计中国网页设计实例实例2:基于:基于jspSmartUpload的文件上传的文件上传lSmartUpload是一个免费的文件上传下载组件 l1、使用简单使用简单:仅三五行代码就可以搞定文件的上传l2、方便存取方便存取:利用组件提供的对象,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等)。 3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 中国网页设计中国网页设计l下载jsmartcom_zh_CN.jar文件:http:/ / 新建一个SmartUpload对象l SmartUpload su = new SmartUpload();l su.initialize(pageContext); / 上传初始化l su.upload(); / 准备上传文件l/ 将上传文件全部保存到指定目录lsu.save(/upload);l out.print(文件上传成功文件上传成功);中国网页设计中国网页设计获取上传文件的信息获取上传文件的信息/创建File类的对象以获取上传文件的信息com.jspsmart.upload.File file = su.getFiles().getFile(0);out.println(文件长度: + file.getSize() + );out.println(文件名: + file.getFileName() + );out.println(文件扩展名: + file.getFileExt() + );l%中国网页设计中国网页设计改进:只能上传图片格式文件改进:只能上传图片格式文件image_upload.jsplllalert(只允许上传.jpg/.gif/.png/.bmp类型图片文件);lwindow.location=upload_image.html;llllalert(请先选择要上传的文件);lwindow.location=upload_image.html;ll%中国网页设计中国网页设计lelselout.println(你上传的图片是:);l lcatch (Exception e) l out.print(e.toString(); l l%中国网页设计中国网页设计改进:一次可以上传多个文件改进:一次可以上传多个文件upload.html中国网页设计中国网页设计do_upload.jspl%lSmartUpload su = new SmartUpload();lsu.initialize(pageContext); / 上传初始化lsu.upload(); / 上传文件lint count = su.save(/upload);lout.println(count+个文件上传成功!);l中国网页设计中国网页设计逐一提取上传文件信息逐一提取上传文件信息lfor (int i=0;isu.getFiles().getCount();i+)l com.jspsmart.upload.File file = su.getFiles().getFile(i);lif (file.isMissing() continue; / 若文件不存在则继续lout.println(文件长度: + file.getSize() + );lout.println(文件名: + file.getFileName() + );lout.println(文件扩展名: +file.getFileExt();lout.print(“-);ll%中国网页设计中国网页设计增强:防止文件重名被覆盖的解决方法增强:防止文件重名被覆盖的解决方法repeat_upload.jspll中国网页设计中国网页设计jspSmartUpload的其他功能的其他功能1.限制每个上传文件的最大长度。 su.setMaxFileSize(10000);2.限制总上传数据的长度。 su.setTotalMaxFileSize(20000);3.设定允许上传的文件(通过扩展名限制)su.setAllowedFilesList(doc,txt);4.设定禁止上传的文件(通过扩展名限制)。 su.setDeniedFilesList(exe,bat,jsp);中国网页设计中国网页设计本章结束,谢谢大家!本章结束,谢谢大家!学习网站:中国网页设计