MIS 컨텐츠 프로젝트 시스템은 문서 리소스 관리 및 관리를 기반으로합니다. 폴더 아래의 모든 파일을 스캔하고 필요한 코드를 구현해야합니다.
패키지 q.test.filescanner; import java.io.file; java.util.arraylist 가져 오기; java.util.linkedList 가져 오기; q.test.filescanner.exception.scanfileSexception 가져 오기; / ** * @author */ public class folderFilescanner {private static arraylist <botorfile> scanfiles = new ArrayList <Object> (); / ** LinkedList 구현 **/ Private STATIC LINKEDLIST <FILE> QUEUEFILES = NEW LINKEDLIST <file> (); / ***todo : 지정된 폴더 아래에서 지정된 파일을 재귀 적으로 스캔*@return arraylist <botor>*@author*@author*@author*@auther* @time 11 월 3 일. 파일 디렉토리 = 새 파일 (FolderPath); if (! directory.isdirectory ()) {Throw New ScanFileSexception ( ' " + FolderPath +'" ' + "입력 경로는 디렉토리가 아니므로 디렉토리의 올바른 경로를 입력하십시오.^_^...^_^"); } if (directory.isdirectory ()) {file [] filelist = directory.listfiles (); for (int i = 0; i <filelist.length; i ++) { /** 현재 폴더 인 경우 재귀 스캔 폴더 ** /if (filElist [i] .isdirectory ()) {// 절대 경로 이름 문자열 directorys.add (filelist [i] .getabsolutepath ()); / ** 아래의 폴더를 재귀 적으로 스캔 **/ ** scanfileswithRecursion ** (filElist [i] .getAbsolutePath ()); } / ** folder ** / else {scanfiles.add (filelist [i] .getabsolutepath ()); }}} return scanfiles; } / *** todo : 지정된 폴더 아래의 모든 파일을 비처방 방식으로 스캔합니다* @return arraylist <botorpath 폴더 경로를 스캔 해야하는 폴더 경로* @Author* @Time 2017 년 11 월 3 일* / public static arraylist <boupt> scanfileswithnorecursion (strings polderpath) (scanfilescore); if (! directory.isdirectory ()) {Throw New ScanFileSexception ( ' " + FolderPath +'" ' + "입력 경로는 디렉토리가 아니므로 디렉토리의 올바른 경로를 입력하십시오.^_^...^_^"); } else {// 첫 번째 레이어 디렉토리 파일 [] files = directory.listfiles (); // 스캔 된 파일 배열을 전환합니다. 폴더 인 경우 LinkedList에 넣고 나중에 (int i = 0; i <files.length; i ++) {if (files [i] .isdirectory ()) {queuefiles.add (files [i]); } else {// 파일 이름을 scanfiles.add에 일시적으로 넣습니다 (파일 [i] .getabsolutepath ()); }} // linkedlist가 비어 있지 않은 경우 링크드 목록이 끊어지지 않은 경우 (! queuefiles.isempty ()) {// 링크드리스트 Headdirectory = queuefiles.removeFirst ()에서 첫 번째 파일을 꺼내십시오. file [] currentFiles = headdirectory.listfiles (); for (int j = 0; j <currentfiles.length; j ++) {if (currentFiles [j] .isdirectory ()) {// 여전히 폴더 인 경우 linkedlist queuefiles.add (currentFiles [j])에 넣으십시오. } else {scanfiles.add (currentFiles [j] .getAbsolutePath ()); }}} return scanfiles; }}}}} return scanfiles; }}}}}위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.