java中的文件资源管理器



我想写一个简短的应用程序。它必须浏览文件以查找文件夹。如果它找到一个文件夹,它将在控制台中写入文件夹的名称并写入该文件夹。下一步写入包含在文件夹中的txt文件的控制台名称。

我的代码:
import java.io.File;
public class test {
    public static void search(File f) {
        File[] tab = f.listFiles();
        for (File file1 : tab) {
            if (file1.isDirectory()) {
                search(file1);
            } else {
                if (Txt(file1)) {
                    System.out.println("+ " + file1);
                }
            }
        }
    }
    public static boolean Txt(File f) {
        return f.getName().substring(f.getName().length() - 4).equals(".txt");
    }
    public static void main(String[] args) {
        try {
            File f = new File("/home/mati/Pulpit");
            search(f);
        } catch (Exception e) {
        }
    }
}

代码的结果:

+ New Folder
    - aaa.txt
    - abc.txt
    - abf.txt
+ New Folder2
    - abgh.txt

我的程序只写txt文件,我不知道如何修复它…

两件事:首先,要显示文件夹名称,您需要添加System。在代码分支中使用"if (file1.isDirectory())"条件。你有一个系统。在"else"部分已经出现了,这就是文件名被显示的原因。

其次,如果你的文件夹中有文件夹,这可能不会像你想的那样工作。所有文件夹将显示一个级别的缩进,所有文件将显示另一个级别的缩进。但是您将无法看到哪些文件夹嵌套在其他文件夹中

相关内容

  • 没有找到相关文章

最新更新