Das MIS -Inhaltsprojektsystem basiert auf Dokumentenressourcenverwaltung und -management. Das Scannen aller Dateien unter einem Ordner und das Implementieren des erforderlichen Codes.
Paket Q.test.filescanner; Import Java.io.file; Import Java.util.ArrayList; import Java.util.linkedList; import q.test.filescanner.exception.scanFileSexception; / ** * @Author */ Public Class OrderFilescanner {private statische ArrayList <Object> scanFiles = new ArrayList <Object> (); / ** LinkedList -Implementierung **/ private static LinkedList <Datei> queueFiles = new LinkedList <Datei> (); / ***TODO: Scannen Sie die angegebene Datei unter dem angegebenen Ordner rekursiv. Dateiverzeichnis = neue Datei (OrdnerPath); if (! Directory.isdirectory ()) {neue scanFileSexception ('"' + OrdnerPath + '"' + "Eingabefad ist kein Verzeichnis, geben bitte den richtigen Pfad des Verzeichnisses ein.^_^...^_^"); } if (verzeichnis. für (int i = 0; i <filelist.length; i ++) { /** Wenn es sich derzeit um einen Ordner handelt, geben Sie den rekursiven Scan -Ordner ein ** /if (filelist [i] .isDirectory ()) {// Absolute Pfadname Stringorys.add (Filelist [i] .GetabsolUTepath ()); / ** rekursiv den Ordner unten scannen **/ ** scanFileswithecursion ** (Filelist [i] .getabsolutepath ()); } / ** Nicht-Folder ** / else {scanFiles.add (filelist [i] .getabsolutepath ()); }}} return scanfiles; } / *** TODO: Scannen Sie alle Dateien unter dem angegebenen Ordner nicht rezisive Weise* @return ArrayList <Object>* @param OrdnerPath Der Ordnerpfad, der gescannt werden muss if (! Directory.isdirectory ()) {neue scanFileSexception ('"' + OrdnerPath + '"' + "Eingabefad ist kein Verzeichnis, geben bitte den richtigen Pfad des Verzeichnisses ein.^_^...^_^"); } else {// scannen Sie zuerst die erste Layer -Verzeichnisdatei [] Dateien = Verzeichnis.Listfiles (); // das gescannte Dateiarray übertragen. Wenn es sich um einen Ordner handelt, setzen Sie ihn in die LinkedList ein und verarbeiten Sie ihn später für (int i = 0; i <files.length; i ++) {if (Dateien [i] .isDirectory ()) {Queuefiles.add (Dateien [i]); } else {// geben den Dateinamen vorübergehend in scanFiles scanFiles.add (Dateien [i] .getabsolutepath ()); }} // Wenn die LinkedList nicht überrascht ist, wurde die LinkedList while (! QueueFiles.isempty ()) {// die erste Datei in LinkedList Headdirectory = Queuefiles.RemoveFirst () ausziehen; Datei [] currentFiles = headdirectory.listfiles (); für (int j = 0; j <currentFiles.length; j ++) {if (currentFiles [j] .isDirectory ()) {// Wenn es sich immer noch um einen Ordner handelt, geben Sie es in LinkedList QueueFiles.add (currentFiles [j]); } else {scanFiles.add (currentFiles [j] .getabsolutepath ()); }}} return scanfiles; }}}}} return scanFiles; }}}}}Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.