每次在操作File文件的时候都很头疼,这篇文章简单记录一下file文件的创建和删除操作

代码如下(示例):

public String testFile() throws IOException {
		// 在项目目录下创建文件夹
        String fileUrl = "./temp/";
        Path path = Paths.get(fileUrl);
        if (!new File(fileUrl).exists()) {
            Files.createDirectory(path);
        }

        String dirPath = fileUrl + System.currentTimeMillis() + "_" + RandomStringUtils.randomAlphanumeric(8);

        Long deleteTargetTime = System.currentTimeMillis() - 1000 * 10;

		// 遍历出temp文件夹下的文件和文件夹
        Files.newDirectoryStream(path).forEach(file -> {
            String fileName = file.getFileName().toString();
            String[] time = fileName.split("_");
			// 删除10秒钟以前创建的的所有文件夹和下面文件
            if (Long.parseLong(time[0]) < deleteTargetTime) {
                deleteFile(file.toFile());
            }
        });

		// 创建文件夹
        Files.createDirectory(Paths.get(dirPath));

        return dirPath;

    }

    private void deleteFile(File file) {
    	// 如果文件存在并且是个文件夹,删除下面所有文件
        if (file.exists() && file.isDirectory()) {
            File[] files = file.listFiles();
            for (File f : files) {
                f.delete();
            }
        }
        
        file.delete();

    }