读取目录中的所有文件,包括其子目录
问题描述:
这是我如何设置路径:读取目录中的所有文件,包括其子目录
dPath = dPath.replace("\\", "/");
String iLen;
String FileName;
File iFolder = new File(dPath);
File[] listOfFiles = iFolder.listFiles();
当搜索:
for (int i = 0; i < listOfFiles.length; i++)
{
if (listOfFiles[i].isFile())
{
FileName = listOfFiles[i].getName();
for(String s : iEndsWith)
{
if(FileName.toLowerCase().endsWith(s))
{
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yy h:mm aaa");
iLen = ReadableBytes(listOfFiles[i].length());
Object rowData[] = { FileName, listOfFiles[i].getAbsoluteFile(), sdf.format(listOfFiles[i].lastModified()), iLen };
iTableModel.addRow(rowData);
iTotalFiles ++;
}
}
}
}
这只会寻找在给定的目录路径的文件,但不是它的子目录。我该如何改变它?
答
如果你在Java 7中,你可以使用FileVisitor
:http://docs.oracle.com/javase/tutorial/essential/io/walk.html
如果没有,只是使用功能的简单的递归版本。
答
通行证文件夹这是要搜索
File foldr = new File("c:/javaFolder");
public void addFilesToList(File folder) {
File[] listofFiles = folder.listFiles();
if (listofFiles != null) {
for (File file : listofFiles) {
if (file.isFile()) {
} else
addFilesToList(file);
}
}
}
谢谢,这做到了。 – user1667191