2020-03-30

文件上传

1.DiskFileItemFactory diskFileItemFactory = new DiskF ileItem

// 2、创建一个核心的解析类

ServletFileUpload fileUpload = new ServletFileUpload( diskFileItemFactory);

fileUpload. setHeaderEncoding("UTF-8");

// 3、利用核心类解析Request,解析后会得到多个部分,返回一个List集合,装的是每个部分的内容

List<FileItem> list = fileUpload. parseRequest(request);

// 4、 遍历List集合,会得到代表每个部分的文件项的对象,根据文件项判断是否是文件上传项

for(FileItem fileItem : list) {

/ /判断这个文件项是否是普通项,还是文件上传项

if(fileItem. isFormField()) {

/ /普通项

/ /接收普通项的值

String name = fileItem. getF ieldName();/ /获取普通项的名称

/ /获取普通项的值

String value = fileItem. getString("UTF-8");

System. out . println(name + ":" + value);

}else {

//文件上传项

/ /获取文件上传项的文件的名称

String filename = fileItem. getName();

/ /获取文件上传项的文件的数据

InputStream is = fileItem. getInputStream();

/ /获取文件上传的路径:磁盘绝对路径

String realPath = getServletContext(). getRealPath("/upload");

//创建一个输出流, 写入到设置的路径中

OutputStream os = new FileOutputStream(realPath + "/" + filename);

}

} catch (FileUploadException e) {

// TODO Auto-generated catch block

e. printStackTrace();

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文件上传 (一)文件上传的概述 一、什么是文件上传 文件上传:将本地的文件通过流写入到服务器的过程 二、为什么...
    董宇浩阅读 166评论 0 0
  • 文件上传 (一)文件上传的概述 一、什么是文件上传 文件上传:将本地的文件通过流写入到服务器的过程 二、为什么...
    小汤源O阅读 227评论 0 0
  • 文件上传 (一)文件上传的概述 一、什么是文件上传 文件上传:将本地的文件通过流写入到服务器的过程 二、为什么...
    H_5a8d阅读 264评论 0 0
  • 一、什么是文件上传 文件上传:将本地的文件通过流写入到服务器的过程 二、文件上传的技术 JSPSmartU...
    卡拉什尼科夫_8ca2阅读 195评论 0 0
  • https://segmentfault.com/a/1190000012849921?utm_source=ta...
    想想20阅读 149评论 0 0