施工人员下载批量导入压缩包模版接口,上传压缩包批量导入接口

This commit is contained in:
lcj
2025-04-03 18:03:33 +08:00
parent 7736f4a336
commit a529a8b7e3
11 changed files with 476 additions and 12 deletions

View File

@ -5,8 +5,14 @@ import jakarta.servlet.http.HttpServletResponse;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import java.io.IOException;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.nio.file.FileVisitResult;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;
/**
* 文件处理工具类
@ -40,4 +46,29 @@ public class FileUtils extends FileUtil {
String encode = URLEncoder.encode(s, StandardCharsets.UTF_8);
return encode.replaceAll("\\+", "%20");
}
/**
* 删除目录
*
* @param path 路径
* @throws IOException I/O异常
*/
public static void deleteDirectory(Path path) throws IOException {
// walkFileTree会递归遍历path下所有文件和文件夹
Files.walkFileTree(path, new SimpleFileVisitor<>() {
// 先删除文件
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
Files.delete(file);
return FileVisitResult.CONTINUE;
}
// 然后删除目录
@Override
public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException {
Files.delete(dir);
return FileVisitResult.CONTINUE;
}
});
}
}