Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当遍历一个目录时,如果识别出一个子目录,如何在其中创建一个空文件。?_Java_File - Fatal编程技术网

Java 当遍历一个目录时,如果识别出一个子目录,如何在其中创建一个空文件。?

Java 当遍历一个目录时,如果识别出一个子目录,如何在其中创建一个空文件。?,java,file,Java,File,代码:-列出所有文件检查文件是否为子目录并打印。 在if子句中,我必须使用createNewFile()嵌入一个代码,以便在所有子目录中创建一个新文件。我该怎么做 File directory = new File(directoryName); //get all the files from a directory File[] fList = directory.listFiles();

代码:-列出所有文件检查文件是否为子目录并打印。 在if子句中,我必须使用createNewFile()嵌入一个代码,以便在所有子目录中创建一个新文件。我该怎么做

File directory = new File(directoryName);                          
    //get all the files from a directory            
    File[] fList = directory.listFiles();               
    for (File file : fList){                    
        if (file.isFile()){                         
            System.out.println("Files: " + file.getName());                     
        } else if (file.isDirectory()){     
            file.createNewFile();
            System.out.println("Subdirectory :" +file.getName());   

        }               
    }           
} 

代码的意思是:“如果我正在迭代的当前文件是一个目录,那么从这个目录创建一个新文件”。因此,您迭代的
文件就是您试图创建的
文件,我很惊讶它是否有效。相反,创建一个
新文件
,将此目录作为父目录

比如:

new File(file, "somefilename");

代码的意思是:“如果我正在迭代的当前文件是一个目录,那么从这个目录创建一个新文件”。因此,您迭代的
文件就是您试图创建的
文件,我很惊讶它是否有效。相反,创建一个
新文件
,将此目录作为父目录

比如:

new File(file, "somefilename");

您需要为要创建的新文件指定一个新名称:

else if (file.isDirectory()){
            File nf = new File(file.getAbsolutePath()+File.separator+"newFile")     
            nf.createNewFile();
            System.out.println("Subdirectory :" +file.getName());   

        }

类似于此。

您需要为要创建的新文件指定一个新名称:

else if (file.isDirectory()){
            File nf = new File(file.getAbsolutePath()+File.separator+"newFile")     
            nf.createNewFile();
            System.out.println("Subdirectory :" +file.getName());   

        }

类似这样。

文件nf=File(File.getAbsolutePath()+“/”+“newFile”)
应该是
文件nf=File(File.getAbsolutePath()+文件.separator+“newFile”)
文件nf=File(File.getAbsolutePath()+“/”+“newFile”)
应该是
文件nf=File(File.getAbsolutePath()+文件.separator+“newFile”)尼尔什:是的,这就是为什么它不起作用!!谢谢你的解释!!尼尔什:是的,这就是为什么它不起作用!!谢谢你的解释!!