struts文件上传、Cos组件文件上传

Struts文件上传及cos.jar文件上传
 * 必须在页面form表单中定义enctype="multipart/form-data"属性,才能实现文件的上传

 1.sturts自带的文件上传功能,表单中file的类型为file,则在Form填充中须有相应的属性file类型org.apache.struts.upload.FormFile
   在Action中直接操作FormFile得到该文件的输入流(getInputStream()),文件名(getFileName()) ,文件大小(getFileSize())等文件的信息
   在根据文件的流操作对文件进行保存。
   //文件流的读入与写出
   BufferedInputStream bis = new BufferedInputStream(formFile.getInputStream());
   //savePath为文件需要保存的路径
   BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File(savePath)));
   //读写文件流
   int b = 0;
   while((b = bis.read()) != -1) {
    bos.write(b);
   }
   //关闭流操作
   bos.close();
   bis.close();
  
  
 2.采用COS.jar插件上传文件
   * 需要导入cos.jar包到WEB-INFO/lib目录下
      组件中com.oreilly.servlet.multipart.MultipartParser类操作文件上传,该类有isFile()与isParam()方法可以判断页面提交的表单是参数还是
      文件,再将该类的实例转型为FilePart或ParamPart,FilePart实例可实现对文件的信息(getFileName())等。
     
      * 对文件的上传的操作直接通过流直接写入文件,savePath为文件保存路径、fileSize为文件大小
       File file = new File(savePath);
       long fileSize = filePart.writeTo(file);
      * 也可通过操作输入流filePart.getInputStream()进行文件的上传,方法如上面操作
       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值