为了账号安全,请及时绑定邮箱和手机立即绑定

java实现文件上传下载(2)smartupload

标签:
Java

1.批量上传
//设置文件上传路径
String path=getServletContext().getRealPath("/")+"upload/";
File f=new File(path);
if(!f.exists)
{
f.mkdir();
}
//引入插件
smartUpload up=new smartUpload();
up.initialize(getServletConfig(),req,res);
//// 1.限制每个上传文件的最大长度。
up.setMaxFileSize(1024*1024);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
up.setAllowedFilesList("doc,txt");
up.upload();
int count = su.save(path);
//异常输出到前台页面
if(e.getMessage.IndexOf("1015")!=-1)
{
reuslt=“”“”;
}
//获得其他属性
for(int i = 0 ;i <mySmartUpload.getFiles().getCount();i++){//多个文件的上传
File file = mySmartUpload.getFiles().getFile(i);
if(file.getSize()!=0){
//拼凑上传文件的新名称
String fileNameString = System.currentTimeMillis()+"."+file.getFileExt();
//通过servlet的实际路径拼凑上传文件的保存路径,实际使用需要修改此路径
String path = "/upload123123"+java.io.File.separator+fileNameString;

                    file.saveAs(path);  
                }  

文件批量下载
//设置请求头信息
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment;filename=test.zip");
String path = getServletContext().getRealPath("/") + "img/";
//初始化smartupload
SmartUpload sm=new SmartUpload();
sm.initialize(getServletConfig(), request, response);
sm.setContentDisposition(null);
String[] fileNames=request.getParameterValues("filename");
String str = "";
String rt = "\r\n";
//返回一个压缩包
ZipOutputStream zos = new ZipOutputStream(response.getOutputStream());
for(String filename : fileNames){
str += filename + rt;
File file = new File(path + filename);
zos.putNextEntry(new ZipEntry(filename));
FileInputStream fis = new FileInputStream(file);
//复制文件到压缩流中
IOUtils.copy(fis, zos);
zos.flush();
fis.close();
}
//设置注释
zos.setComment("下载成功:" + rt + str);
zos.flush();
zos.close();

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消