Le système de projet de contenu MIS est basé sur la gestion et la gestion des ressources des documents. Il nécessite la numérisation de tous les fichiers dans un dossier et l'implémentation du code requis.
package q.test.filescanner; Importer java.io.file; import java.util.arraylist; import java.util.linkedlist; import q.test.filescanner.exception.scanfilesexception; / ** * @Author * / public class FolderFileScanner {private static arrayList <objet> scanfiles = new ArrayList <Bject> (); / ** LinkedList Implementation ** / private static LinkedList <Fichier> queueFiles = new LinkedList <File> (); / ** * TODO: analyser récursivement le fichier spécifié sous le dossier spécifié * @return ArrayList <Bject> * @Author * @time 3 novembre 2017 * / public static arrayList <Bject> ** ScanFiles withRecursion ** (String FolderPath) lance <String> (); File Directory = nouveau fichier (FolderPath); if (! Directory.isDirectory ()) {Throw New ScanFilesexception ('' '+ Folderpath +' "'+" Le chemin d'entrée n'est pas un répertoire, veuillez saisir le bon chemin du répertoire. ^ _ ^ ... ^ _ ^ "); } if (Directory.isDirectory ()) {file [] FileList = Directory.ListFiles (); pour (int i = 0; i <fileList.length; i ++) {/ ** Si c'est actuellement un dossier, entrez le dossier de numérisation récursif ** / if (FileList [i] .isdirectory ()) {// Nom de la voie absolue. / ** Scannez récursivement le dossier ci-dessous ** / ** scanfiles withrecursion ** (FileList [i] .getAbsolutePath ()); } / ** Non-Folder ** / else {ScanFiles.add (FileList [i] .getAbsolutepath ()); }}} return ScanFiles; } / ** * TODO: analysez tous les fichiers sous le dossier spécifié de manière non rérécursive * @return arrayList <objet> * @param folderPath Le chemin du dossier qui doit être scanné * @author * @time 3 novembre 2017 * / public static ArrayList <Bux Fichier (FolderPath); if (! Directory.isDirectory ()) {Throw New ScanFilesexception ('' '+ Folderpath +' "'+" Le chemin d'entrée n'est pas un répertoire, veuillez saisir le bon chemin du répertoire. ^ _ ^ ... ^ _ ^ "); } else {// Analyse d'abord le premier fichier de répertoire de couche [] files = répertoire.listFiles (); // transsulez le tableau de fichiers numérisé. S'il s'agit d'un dossier, mettez-le dans LinkedList et traitez-le plus tard pour (int i = 0; i <files.length; i ++) {if (files [i] .isDirectory ()) {queueFiles.add (fichiers [i]); } else {// Mettez temporairement le nom de fichier dans ScanFiles ScanFiles.add (fichiers [i] .getAbsolutepath ()); }} // Si LinkedList est non empty traversé LinkedList while (! QueueFiles.isempty ()) {// Déplacez le premier fichier dans LinkedList HeadDirectory = queueFiles.RemoveFirst (); File [] currentFiles = headDirectory.ListFiles (); for (int j = 0; j <currentFiles.length; j ++) {if (currentFiles [j] .isDirectory ()) {// s'il s'agit toujours d'un dossier, mettez-le dans lienList fitreFiles.add (currentFiles [j]); } else {ScanFiles.add (currentfiles [j] .getAbsolutepath ()); }}} return ScanFiles; }}}}} return ScanFiles; }}}}}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.