Java 当遍历一个目录时,如果识别出一个子目录,如何在其中创建一个空文件。?
代码:-列出所有文件检查文件是否为子目录并打印。 在if子句中,我必须使用createNewFile()嵌入一个代码,以便在所有子目录中创建一个新文件。我该怎么做Java 当遍历一个目录时,如果识别出一个子目录,如何在其中创建一个空文件。?,java,file,Java,File,代码:-列出所有文件检查文件是否为子目录并打印。 在if子句中,我必须使用createNewFile()嵌入一个代码,以便在所有子目录中创建一个新文件。我该怎么做 File directory = new File(directoryName); //get all the files from a directory File[] fList = directory.listFiles();
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”)尼尔什:是的,这就是为什么它不起作用!!谢谢你的解释!!尼尔什:是的,这就是为什么它不起作用!!谢谢你的解释!!