file.listFile()
을 사용하여 지정된 경로의 파일과 디렉토리를 나열합니다. file.ListFile()
을 사용하는 이유는 사용자가 디렉토리 만 반환하거나 파일 만 원할 경우 FileFilter를 사용하기 때문입니다. 하지만 내가 가진 결과는 지정된 경로의 폴더와 파일 만 나열하고 하위 폴더와 파일은 나열하지 않는다는 것입니다. 이것은 내가 지금 함께 일하고 있어요 무엇 :file.listFiles()를 사용하여 서브 디렉토리와 파일을 나열하는 방법
file = new File(directory.getText().trim());
// Used this for testing; ListFiles() is a method
File[] test = ListFiles(directory.getName()); // I made up that will list the subfolders and files.
results.setListData(test); // Also for testing. results is a JList
// This is what i previously had that only lists folders and file in that directory
results.setListData(file.listFiles(new Filter() {
public boolean accept(File file) {
if (directories.isSelected()) {
// Directories checkBox
if (files.isSelected()) {
// Files checkBox
// FILES && DIRECTORIES
return (file.isDirectory() || file.isFile()) && (StringUtils.contains(file.getName(), userInput.getText().trim()));
}
// DIRECTORIES
return (file.isDirectory()) && (StringUtils.contains(file.getName(), userInput.getText().trim()));
} else {
if (files.isSelected()) {
// FILES
return (file.isFile()) && (StringUtils.contains(file.getName(), userInput.getText().trim()));
}
}
return true;
}
}));
}
나는 필터에 대한 이동하는 방법 만 잘 모르겠어요
이 필터 인라인이없는 것이 더 쉽습니다을하고 FileFilter를 함께') (때 listFiles'전화 매개 변수로 기능? – Vince
그게 모든 하위 디렉토리를 걷는 데 도움이되지는 않습니다. 내 편집을 참조하십시오. – Jeremy
리스트를 사용하는 유일한 문제는'results.setListData()'를 사용할 때리스트가 아닌'File []'이 필요하다는 것입니다. – Vince