温馨提示×

java file.exists的递归查找

小樊
83
2024-08-18 17:58:36
栏目: 编程语言

在Java中,可以使用递归方法来实现对文件的递归查找。下面是一个示例代码,演示了如何使用递归方法来查找指定目录下是否存在某个文件。

import java.io.File;

public class FileSearch {

    public static void main(String[] args) {
        String directoryPath = "path/to/directory";
        String fileName = "file.txt";

        File directory = new File(directoryPath);

        if (directory.exists()) {
            if (searchFile(directory, fileName)) {
                System.out.println("File found in directory: " + directoryPath);
            } else {
                System.out.println("File not found in directory: " + directoryPath);
            }
        } else {
            System.out.println("Directory does not exist: " + directoryPath);
        }
    }

    public static boolean searchFile(File directory, String fileName) {
        File[] files = directory.listFiles();

        if (files != null) {
            for (File file : files) {
                if (file.isDirectory()) {
                    if (searchFile(file, fileName)) {
                        return true;
                    }
                } else {
                    if (file.getName().equals(fileName)) {
                        return true;
                    }
                }
            }
        }

        return false;
    }
}

在上面的代码中,searchFile方法采用递归方式查找指定目录下是否存在指定名称的文件。如果找到了文件,则返回true;如果未找到文件,则返回false。在main方法中,首先检查目录是否存在,然后调用searchFile方法进行文件查找,并输出结果。

0