1.文件夹工具类
1.1 pom依赖
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
1.2demo案例
1. //文件路径 /Users/administrator/IDEA3/ms-cloud-standard-erp/ms-erp-modules/ms-erp-manager/src/main/resources
String path = localPath+File.separator+backupName;
//生成文件夹
FileUtil.createFolder(path);
2.
//本地项目路径
private static final String localPath = System.getProperty("user.dir") + File.separator + "ms-erp-modules" + File.separator + "ms-erp-manager";
//包路径
String path = localPath + File.separator + backupName;
//删除文件夹
FileUtil.removeDirectory(new File(path));
1.3文件夹工具类
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import java.io.*;
import java.util.Collection;
import java.util.Iterator;
/**
* @ClassName FileUtil
* @description: 文件工具
* @author: qsong
* @create: 2020-11-12 11:32
* @Version 1.0
**/
public class FileUtil {
private static final Logger logger = LogManager.getLogger(FileUtil.class);
/**
* InputStream转byte
* @param input
* @return
* @throws IOException
*/
public static byte[] inputStreamToByteArray(InputStream input)
throws IOException{
ByteArrayOutputStream output = new ByteArrayOutputStream();
copy(input, output);
return output.toByteArray();
}
private static int copy(InputStream input, OutputStream output)throws IOException{
byte[] buffer = new byte[4096];
long count = 0L;
int n = 0;
while (-1 != (n = input.read(buffer))) {
output.write(buffer, 0, n);
count += n;
}
if (count > 2147483647L) {
return -1;
}
return (int)count;
}
/**
* 生成文件夹
* @param
*/
public static Boolean createFolder(String path){
//生成文件目录
File dirFile = new File( path);
if (!(dirFile.exists()) && !(dirFile.isDirectory())){
dirFile.mkdirs();
return true;
}
return false;
}
/**
* 获取文件的目录,不忽略分割符
* @param fullFileName 完整路径名称
*/
public static String getFullPath(String fullFileName){
if(fullFileName != null && !"".equals(fullFileName.trim())){
return FilenameUtils.getFullPath(fullFileName);
}
return "";
}
/**
* 删除目录
* @param
*/
public static Boolean removeDirectory(File dir){
Boolean state = null;
if(dir.isDirectory()){
state = FileUtils.deleteQuietly(dir);
if(state == false){
//清空内容
String[] extensions = null;//后缀名{"doc", "pdf"}
boolean recursive = true;//是否递归
Collection<File> files = FileUtils.listFiles(dir, extensions, recursive);
// 迭代输出
for (Iterator<File> iterator = files.iterator(); iterator.hasNext();) {
File file = iterator.next();
if(!file.isHidden()){//不是隐蔽文件
//清空内容
try {
FileUtils.writeStringToFile(file, "", "UTF-8");
state = file.delete();
} catch (IOException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
if (logger.isErrorEnabled()) {
logger.error("删除目录",e);
}
}
}
}
}
}
return state;
}
/**
* @Author qsong
* @Description 获取文件的大小
* @Date 下午1:48 2020/11/20
* @Param
* @return 返回KB大小
**/
public static Long getFileSize(File file){
if(file.exists()&&file.isFile()){
return file.length()/1024;
}
return -1L;
}
}