使用java怎么查找文件夾下最新生成的文件?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為高安等服務建站,高安等地企業(yè),進行企業(yè)商務咨詢服務。為高安企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。
第一步
在本地電腦上找一個目錄,包含幾個文件,修改的時間有差別:
第二步
打開eclipse創(chuàng)建一個測試類,主要操作File類:
第三步
編寫一個遞歸方法,可以變量這個目錄下所有的文件,并輸出文件的路徑,和最后修改時間
第四步
定義main函數(shù),調(diào)用遞歸函數(shù),輸出所有文件的修改時間:
第五步
修改print方法,記錄出最近修改的文件路徑和修改的時間:
package net.xsoftlab.baike; import java.io.File; import java.io.FileFilter; import java.util.ArrayList; import java.util.List; //查找目錄下指定文件名的文件 public class TextSearchFile { static int countFiles = 0;// 聲明統(tǒng)計文件個數(shù)的變量 static int countFolders = 0;// 聲明統(tǒng)計文件夾的變量 public static File[] searchFile(File folder, final String keyWord) {// 遞歸查找包含關(guān)鍵字的文件 File[] subFolders = folder.listFiles(new FileFilter() {// 運用內(nèi)部匿名類獲得文件 @Override public boolean accept(File pathname) {// 實現(xiàn)FileFilter類的accept方法 if (pathname.isFile())// 如果是文件 countFiles++; else // 如果是目錄 countFolders++; if (pathname.isDirectory() || (pathname.isFile() && pathname.getName().toLowerCase().contains(keyWord.toLowerCase())))// 目錄或文件包含關(guān)鍵字 return true; return false; } }); List<File> result = new ArrayList<File>();// 聲明一個集合 for (int i = 0; i < subFolders.length; i++) {// 循環(huán)顯示文件夾或文件 if (subFolders[i].isFile()) {// 如果是文件則將文件添加到結(jié)果列表中 result.add(subFolders[i]); } else {// 如果是文件夾,則遞歸調(diào)用本方法,然后把所有的文件加到結(jié)果列表中 File[] foldResult = searchFile(subFolders[i], keyWord); for (int j = 0; j < foldResult.length; j++) {// 循環(huán)顯示文件 result.add(foldResult[j]);// 文件保存到集合中 } } } File files[] = new File[result.size()];// 聲明文件數(shù)組,長度為集合的長度 result.toArray(files);// 集合數(shù)組化 return files; } public static void main(String[] args) {// java程序的主入口處 File folder = new File("E:/baidu");// 默認目錄 String keyword = "1231"; if (!folder.exists()) {// 如果文件夾不存在 System.out.println("目錄不存在:" + folder.getAbsolutePath()); return; } File[] result = searchFile(folder, keyword);// 調(diào)用方法獲得文件數(shù)組 System.out.println("在 " + folder + " 以及所有子文件時查找對象" + keyword); System.out.println("查找了" + countFiles + " 個文件," + countFolders + " 個文件夾,共找到 " + result.length + " 個符合條件的文件:"); for (int i = 0; i < result.length; i++) {// 循環(huán)顯示文件 File file = result[i]; System.out.println(file.getAbsolutePath() + " ");// 顯示文件絕對路徑 } } }
看完上述內(nèi)容,你們掌握使用java怎么查找文件夾下最新生成的文件的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章名稱:使用java怎么查找文件夾下最新生成的文件
文章網(wǎng)址:http://muchs.cn/article38/igecsp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、響應式網(wǎng)站、營銷型網(wǎng)站建設、虛擬主機、搜索引擎優(yōu)化、手機網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)