ระบบโครงการเนื้อหา MIS ขึ้นอยู่กับการจัดการทรัพยากรและการจัดการเอกสาร ต้องใช้การสแกนไฟล์ทั้งหมดภายใต้โฟลเดอร์และใช้รหัสที่ต้องการ
แพ็คเกจ q.test.filescanner; นำเข้า Java.io.File; นำเข้า java.util.arraylist; นำเข้า java.util.linkedList; นำเข้า q.test.filescanner.exception.scanfilesexception; / ** * @author */ คลาสสาธารณะ FolderFilescanner {ArrayList แบบคงที่ส่วนตัว <Ojrop> SCANFILES = ARRAYLIST ใหม่ <Ojrop> (); / ** การใช้งาน LinkedList **/ Private Static LinkedList <File> queueFiles = ใหม่ LinkedList <File> (); / ***TODO: สแกนไฟล์ที่ระบุซ้ำภายใต้โฟลเดอร์ที่ระบุ*@return ArrayList <Object>*@author*@time 3 พฤศจิกายน 2017*/ arraylist สาธารณะคง ไดเรกทอรีไฟล์ = ไฟล์ใหม่ (FolderPath); if (! directory.isdirectory ()) {โยน scanfilesexception ใหม่ ('' ' + folderpath +' '' + "เส้นทางอินพุตไม่ใช่ไดเรกทอรีโปรดป้อนเส้นทางที่ถูกต้องของไดเรกทอรี^_^...^_^"); } if (directory.isdirectory ()) {ไฟล์ [] fileList = directory.listfiles (); สำหรับ (int i = 0; i <fileList.length; i ++) { /** ถ้าเป็นโฟลเดอร์ในปัจจุบันให้ป้อนโฟลเดอร์สแกนแบบเรียกซ้ำ ** /ถ้า (fileList [i] .isdirectory ()) {// path asbeute directorys.add / ** สแกนโฟลเดอร์ด้านล่าง **/ ** scanfileswithRecursion ** (FileList [i] .getAbsolutePath ()); } / ** non-folder ** / else {scanfiles.add (filelist [i] .getAbsolutepath ()); }}} ส่งคืน scanfiles; } / *** TODO: สแกนไฟล์ทั้งหมดด้านล่างโฟลเดอร์ที่ระบุในลักษณะที่ไม่ซ้ำ* @return ArrayList <Object>* @Param FolderPath เส้นทางโฟลเดอร์ที่ต้องสแกน* @author* @time 3 พฤศจิกายน 2017 ไฟล์ (FolderPath); if (! directory.isdirectory ()) {โยน scanfilesexception ใหม่ ('' ' + folderpath +' '' + "เส้นทางอินพุตไม่ใช่ไดเรกทอรีโปรดป้อนเส้นทางที่ถูกต้องของไดเรกทอรี^_^...^_^"); } else {// ครั้งแรกสแกนไฟล์ไดเรกทอรีเลเยอร์แรก [] ไฟล์ = directory.listfiles (); // ส่งสัญญาณอาร์เรย์ไฟล์ที่สแกน หากเป็นโฟลเดอร์ให้ใส่ลงใน LinkedList และประมวลผลในภายหลังสำหรับ (int i = 0; i <files.length; i ++) {ถ้า (ไฟล์ [i] .isdirectory ()) {queuefiles.add (ไฟล์ [i]); } else {// ใส่ชื่อไฟล์ลงใน scanfiles scanfiles.add ชั่วคราว (ไฟล์ [i] .getabsolutepath ()); }} // ถ้า linkedList เป็น linkedList ที่ไม่ได้รับการตรวจสอบในขณะที่ (! queueFiles.isEmpty ()) {// ย้ายไฟล์แรกใน LinkedList HeadDirectory = QueueFiles.RemoveFirst (); ไฟล์ [] currentFiles = headDirectory.listFiles (); สำหรับ (int j = 0; j <currentfiles.length; j ++) {ถ้า (currentfiles [j] .isdirectory ()) {// ถ้ามันยังคงเป็นโฟลเดอร์ให้ใส่ลงใน linkedList queueFiles.add (currentfiles [j]); } else {scanfiles.add (currentfiles [j] .getabsolutepath ()); }}} ส่งคืน scanfiles; }}}}} ส่งคืน scanfiles; -ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น