java 文件上传目录,java web 实现文件夹上传(保留目录结构)

今天我弄了一下文件夹上传(很简单的

首先,我们的html需要这样写

这个一定要加上去

enctype="multipart/form-data" method="post"

还有

webkitdirectory mozdirectory

如果没有在Spring 里配置multipartResolver会报错,配置一下就好了

class="org.springframework.web.multipart.commons.CommonsMultipartResolver">

999999999999999999

UTF-8

然后就是我们的后台

@RequestMapping("/upload")

public Message upload(@RequestParam("type")int type, @RequestParam("file") MultipartFile[] file){

for(MultipartFile f:file){

File file1 ;

String name="";

try {

if (f instanceof CommonsMultipartFile) {

//转换成这个对象,然后我们需要通过里面的FileItem来获得相对路径

CommonsMultipartFile f2 = (CommonsMultipartFile) f;

name = f2.getFileItem().getName();

System.out.println(name + "        ---------相对路径");

file1 = new File(getProjectPath() + "/" + name);

file1.mkdirs();

file1.createNewFile();

f.transferTo(file1);

}

System.out.println(f.getOriginalFilename() + "   iii         --------");

System.out.println("sssss   ");

}catch (Exception e){

e.printStackTrace();

}

}

return new Message(true,"成功");

}

我们需要将MultipartFile转换成这个对象

CommonsMultipartFile f2 = (CommonsMultipartFile) f;

因为我们需要里面的FileItem来获得相对路径

获得了相对路径,然后我们就用项目路径和这个相对路径加上去

然后创建文件夹,并写入到服务器的绝对路径就行了

前端效果:

b4af8898a2384e9147582662c33a86a4.png

后台服务端目录:F:\Git\up6\upload\2019\04\25\096bd8e474d646c79e2de23c4066667e

9d767dd7a60065c50cab6675f282bfd1.png

2515a6c04d63b78d4fb0aad75a7eb08c.png

由上图可以看出,上传后保留了目录结构,保证了文件夹的不变性,完整的将文件夹上传了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值