multipartfile怎么获得这个file

multipartfile怎么获得这个file,第1张

你好,这样单纯的拷贝文件是不可以的,必须要用到上传的组件,

常用的上传组件:

Apache 的 Commons FileUpload

JavaZoom的UploadBean

jspSmartUpload

网上这方面的资料太多了,FileUpload是较经常使用的,大致上传代码是

DiskFileItemFactory factory = new DiskFileItemFactory();

  ServletFileUpload upload = new ServletFileUpload(factory);

  try {

   List items = uploadparseRequest(request);

   Iterator itr = itemsiterator();

   while (itrhasNext()) {

    FileItem item = (FileItem) itrnext();

    if (itemisFormField()) {

     Systemoutprintln("表单参数名:" + itemgetFieldName() + ",表单参数值:" + itemgetString("UTF-8"));

    } else {

     if (itemgetName() != null && !itemgetName()equals("")) {

      Systemoutprintln("上传文件的大小:" + itemgetSize());

      Systemoutprintln("上传文件的类型:" + itemgetContentType());

      // itemgetName()返回上传文件在客户端的完整路径名称

      Systemoutprintln("上传文件的名称:" + itemgetName());

      File tempFile = new File(itemgetName());

//上传文件的保存路径

      File file = new File(scgetRealPath("/") + savePath, tempFilegetName());

      itemwrite(file);

      requestsetAttribute("uploadmessage", "上传文件成功!");

     }else{

      requestsetAttribute("uploadmessage", "没有选择上传文件!");

     }

    }

   }

  }catch(FileUploadException e){

   eprintStackTrace();

  } catch (Exception e) {

   eprintStackTrace();

   requestsetAttribute("uploadmessage", "上传文件失败!");

  }

希望可以帮助到你

FileItem有个方法write(file),write方法将FileItem对象中的内容保存到某个指定的文件中。如果FileItem对象中的内容是保存在某个临时文件中,该方法完成后,临时文件可以会被删除。

该方法也可以将普通表单字段保存在一个文件中,但最主要的用途是把上传的文件内容保存在本地文件系统中。

MultipartFile是spring的一个接口,通常我们可以在controller定义方法使用MultipartFile接收form表单提交的文件,然后将MultipartFile可以转化成一个文件。

这个接口通常是用来接收上传的文件,要将文件转换成MultipartFile文件,那么实际上应该考虑的是将File转换成CommonsMultipartFile。CommonsMultipartFile的构造器需要一个FileItem的参数,FileItem有一个实现类叫DefaultFileItem,DefaultFileItem 是apachecommonsfileupload下面的一个类。问题回到了需要去看一下apache的fileupload的源码,然后自己实现文件的上传。

以上就是关于multipartfile怎么获得这个file全部的内容,包括:multipartfile怎么获得这个file、java servlet如何获取提交的文件。、Apache FileUpload文件上传组件API解析等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9639321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存