我想移動到Java目錄中但我不知道它的名稱? Java是否提供了這樣的功能?在不知道其名稱的情況下移動到特定目錄中
File srcFile = "C:/Entertainment/XXXXXXX/break.avi"
我確定Entertainment中只有一個目錄,但我不知道它的名字。如何移動XXXXXXX目錄以訪問其中的任何文件?
任何幫助?
我想移動到Java目錄中但我不知道它的名稱? Java是否提供了這樣的功能?在不知道其名稱的情況下移動到特定目錄中
File srcFile = "C:/Entertainment/XXXXXXX/break.avi"
我確定Entertainment中只有一個目錄,但我不知道它的名字。如何移動XXXXXXX目錄以訪問其中的任何文件?
任何幫助?
嘗試,
File file = new File("C:/Entertainment");
File[] files = file.listFiles();
File srcFile = new File("C:\\Entertainment");
srcFile = new File(srcFile, srcFile.list()[0]);
srcFile = newFile(srcFile, "break.avi");
System.out.println(srcFile.getPath());
File srcDir = new File("C:/Entertainment/");
File srcFile = null;
for (File dirMember : srcDir.listFiles()) {
if (!dirMember.isDirectory()) {
continue; // we don't need regular files
}
if (dirMember.getName().equals(".")) {
continue; // we don't need this directory
}
if (dirMember.getName().equals("..")) {
continue; // we don't need the parent directory
}
// This is the one you need.
srcFile = new File(new File(srcDir, dirMember.getName()), "break.avi");
}
你也可以使用FileFilter,e.g一個從Commons IO
File dir = new File("C:/Entertainment/");
File[] files = dir.listFiles(DirectoryFileFilter.INSTANCE); // returns all subdirs
srcFile = new File(files[0], "break.avi");
File outer= new File("C:/test");
File inner = outer.listFiles()[0];//if you are sure there is one
File[] listOfFilesInInnerMost = inner.listFiles();
System.out.println("Files: " + Arrays.asList(listOfFilesInInnerMost));
將打印
文件:[C:\測試\東西\文本(2)。txt文件,C:\測試\東西\文本(3)。txt文件,C:\測試\東西\的text.txt]
您可以在「Entertainment」中獲得目錄中的文件列表。如果只有一個,那麼在列表中只有一個元素。 –