以递归方式读取文件并将其存储为java

时间:2017-05-19 08:06:10

标签: java vector

    public Vector readFiles(File Mydir) {

        Vector<File> vec = new Vector<>(10,10);  // to store the needed files

        for (File f: Mydir.listFiles()){
            if (!f.isDirectory()){
                System.out.println("file found"+ f.getName());
                vec.addElement(f);

                // reads all the files in the directory recursively
            } else
                readFiles(f);
        }
       // System.out.println("size of vec = " + vec.size());
        return vec;
    }

您好我试图读取目录中的所有txt和pdf文件并将它们存储在矢量中。但我的矢量只添加其中4个作为元素! 我打印了文件,它们都被找到但没有添加到vec中。谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

当您递归调用您的方法时,您不能提供有价值的向量:

   readFiles(f);


每次通话都会被覆盖:

public Vector readFiles(File Mydir) {

    Vector<File> vec = new Vector<>(10,10);  // to store the needed files