使用java怎么查找文件夾下最新生成的文件?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為高安等服務(wù)建站,高安等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為高安企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
第一步
在本地電腦上找一個(gè)目錄,包含幾個(gè)文件,修改的時(shí)間有差別:
第二步
打開(kāi)eclipse創(chuàng)建一個(gè)測(cè)試類,主要操作File類:
第三步
編寫一個(gè)遞歸方法,可以變量這個(gè)目錄下所有的文件,并輸出文件的路徑,和最后修改時(shí)間
第四步
定義main函數(shù),調(diào)用遞歸函數(shù),輸出所有文件的修改時(shí)間:
第五步
修改print方法,記錄出最近修改的文件路徑和修改的時(shí)間:
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)計(jì)文件個(gè)數(shù)的變量 static int countFolders = 0;// 聲明統(tǒng)計(jì)文件夾的變量 public static File[] searchFile(File folder, final String keyWord) {// 遞歸查找包含關(guān)鍵字的文件 File[] subFolders = folder.listFiles(new FileFilter() {// 運(yùn)用內(nèi)部匿名類獲得文件 @Override public boolean accept(File pathname) {// 實(shí)現(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; } }); Listresult = new ArrayList ();// 聲明一個(gè)集合 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ù)組,長(zhǎng)度為集合的長(zhǎng)度 result.toArray(files);// 集合數(shù)組化 return files; } public static void main(String[] args) {// java程序的主入口處 File folder = new File("E:/baidu");// 默認(rèn)目錄 String keyword = "1231"; if (!folder.exists()) {// 如果文件夾不存在 System.out.println("目錄不存在:" + folder.getAbsolutePath()); return; } File[] result = searchFile(folder, keyword);// 調(diào)用方法獲得文件數(shù)組 System.out.println("在 " + folder + " 以及所有子文件時(shí)查找對(duì)象" + keyword); System.out.println("查找了" + countFiles + " 個(gè)文件," + countFolders + " 個(gè)文件夾,共找到 " + result.length + " 個(gè)符合條件的文件:"); for (int i = 0; i < result.length; i++) {// 循環(huán)顯示文件 File file = result[i]; System.out.println(file.getAbsolutePath() + " ");// 顯示文件絕對(duì)路徑 } } }
看完上述內(nèi)容,你們掌握使用java怎么查找文件夾下最新生成的文件的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!