如何使用java在给定路径的超级目录中查找特定文件夹 如何使用java在给定路径的超级目录中查找特定文件夹 例如,我需要在给定路径中找到一个名为“Incoming”的文件夹:D:\test\28-4-2016\spr\5526283_1\ItemFile\144602650776_1\ftp\content providers\spr-e\data\Incoming\EHPP-17-2-2015\EHPP-17-2-2015 我需要找到文件夹及其路径 我当前的代码找不到文件夹 有人能帮我做到这一点吗
-------------------代码段开始-------------------------- 公共静态void find() {如何使用java在给定路径的超级目录中查找特定文件夹 如何使用java在给定路径的超级目录中查找特定文件夹 例如,我需要在给定路径中找到一个名为“Incoming”的文件夹:D:\test\28-4-2016\spr\5526283_1\ItemFile\144602650776_1\ftp\content providers\spr-e\data\Incoming\EHPP-17-2-2015\EHPP-17-2-2015 我需要找到文件夹及其路径 我当前的代码找不到文件夹 有人能帮我做到这一点吗,java,file,search,directory,Java,File,Search,Directory,-------------------代码段开始-------------------------- 公共静态void find() { 您的示例和硬编码路径中似乎有输入错误?另外,请使用path.pathSeparator()而不是双重启动。我建议您递归地导航到子文件夹并输出所有要调试的文件和目录。更改findDirectory方法,如下所示 public static void find() { File dir = new File( "D:\\test\\
您的示例和硬编码路径中似乎有输入错误?另外,请使用path.pathSeparator()而不是双重启动。我建议您递归地导航到子文件夹并输出所有要调试的文件和目录。更改
findDirectory
方法,如下所示
public static void find() {
File dir = new File(
"D:\\test\\28-4-2016\\apa\\5346560_1\\ItemFile\\1444799103007_1\\ftp\\content-providers\\apa-e\\data\\incoming\\CBS_v47i4");
foundFolder = findDirectory(dir);
}
private static boolean findDirectory(File parentDirectory) {
System.out.println(parentDirectory.getPath());
File[] files = parentDirectory.listFiles();
for (File file : files) {
if (!file.isFile()) {
if (file.getName().equals("incoming")) {
System.out.println("Incoming Folder found : ");
System.out.println("Incoming filder path : " + file.getAbsolutePath());
System.out.println("Parent path : " + file.getParent());
return true;
} else if (file.isDirectory()) {
return findDir(file);
}
}
}
System.out.println("Incoming Folder not found : ");
return false;
}
您遇到的问题是什么?任何异常或错误输出?抱歉,我更新了我的问题。文件夹“Incoming”将包含在给定路径的超级目录中。@Blip:请帮助我实现这一点。谢谢您,先生,您能帮我指导如何检索字符串直到Incoming吗。?
public static void find() {
File dir = new File(
"D:\\test\\28-4-2016\\apa\\5346560_1\\ItemFile\\1444799103007_1\\ftp\\content-providers\\apa-e\\data\\incoming\\CBS_v47i4");
foundFolder = findDirectory(dir);
}
private static boolean findDirectory(File parentDirectory) {
System.out.println(parentDirectory.getPath());
File[] files = parentDirectory.listFiles();
for (File file : files) {
if (!file.isFile()) {
if (file.getName().equals("incoming")) {
System.out.println("Incoming Folder found : ");
System.out.println("Incoming filder path : " + file.getAbsolutePath());
System.out.println("Parent path : " + file.getParent());
return true;
} else if (file.isDirectory()) {
return findDir(file);
}
}
}
System.out.println("Incoming Folder not found : ");
return false;
}