网站首页> 博客> java循环创建不存在的文件夹
java循环创建不存在的文件夹
package com.util;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileUtils;
import org.springframework.util.Assert;
import org.springframework.web.multipart.MultipartFile;
/**
* 文件工具类
*
* @author wanghm
*
*/
public class FileUtil extends FileUtils {
/**
* 循环创建不存在的文件夹
*
* @param dirPath
*/
public static void dirExistOrCreate(String dirPath){
List
addNotExistPath(dirPath, list);
//创建不存在的文件夹
for(int i = list.size() - 1; i >= 0; i--){
boolean mkdirs = new File(list.get(i)).mkdirs();
System.out.println("文件夹[" + list.get(i) + "]创建[" + (mkdirs ? "成功" : "失败") + "]!");
}
}
/**
* 添加不存在的文件夹路径到list集合
*
* @param dirPath
* @param list
*/
private static void addNotExistPath(String dirPath, List
File file = new File(dirPath);
if(!file.exists()){
if(list == null){
list = new ArrayList
}
// System.out.println("===> " + dirPath);
list.add(dirPath);
dirPath = file.getParent();
addNotExistPath(dirPath, list);
}
}
/**
* 保存文件
*
* @param mf
* @param fileName 如c:/a/b/c/2.txt
* @throws IOException
* @throws IllegalStateException
*/
public static void saveFile(MultipartFile mf, String fileName) throws IllegalStateException, IOException{
Assert.notNull(mf, "MultipartFile 为空");
if(StringUtils.isBlank(fileName)){
throw new RuntimeException("文件名为空");
}
dirExistOrCreate(new File(fileName).getParent());
mf.transferTo(new File(fileName));
}
}
- 加入微信群,不定期分享源码和经验

- 签到活跃榜 连续签到送额外金币
- 最新博客
- 校园跑腿系统外卖系统软件平台大学生创业平台搭建 968
- 壹脉销客智能名片CRM系统小程序可二开源码交付部署 1007
- 为啥没搞了 1534
- Nginx 的 5 大应用场景,太实用了! 1720
- CentOS 8-stream 安装Postgresql 详细教程 2024
- JAVA智慧校园管理系统小程序源码 电子班牌 Sass 模式 1514
- Java智慧校园系统源码 智慧校园源码 智慧学校源码 智慧校园管理系统源码 小程序+电子班牌 1295
- Java智慧校园系统源码 智慧校园源码 智慧学校源码 智慧校园管理系统源码 小程序+电子班牌 1260
- 致远OA权限 2151
- 发博客会有金币吗 1320