
package local; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class SimpleLocalDriveSearch { private static List result = new ArrayList(); private static List over = new ArrayList(); /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { String ext = new BufferedReader(new InputStreamReader(System.in)).readLine(); SimpleLocalDriveSearch slds = new SimpleLocalDriveSearch(); File[] roots = File.listRoots(); for(int i=0;i<roots.length;i++){ List found = slds.search(roots[i], ext); if(found.size()>0){ for(Iterator iter = found.iterator();iter.hasNext();){ System.out.println(iter.next()); } }else{ System.out.println("No match on"+roots[i]); } if(over.size()>0){ for(Iterator it = over.iterator();it.hasNext();){ System.out.println(it.next()); } } } } /** * * @return */ public List search(File startDir,String matchingExtension){ result.clear(); resursiveSearch(startDir,matchingExtension); return result; } /** * * @param rootDir * @param suffix */ public void resursiveSearch(File rootDir,String suffix){ File[] files = rootDir.listFiles(); if(files!=null){ for(int i=0;i<files.length;i++){ if(files[i].isDirectory()){ //System.out.println(files[i]+"............是目錄"); searchDirectory(files[i], suffix); } if(files[i].isFile() && files[i].getName().contains(suffix)){ //result.add(files[i]); searchFile(files[i], "日志"); } } } } /** * * @param Dir * @param word * @return */ public List searchDirectory(File Dir,String word){ resursiveSearch(Dir, word); return result; } /** * * @param file * @param w */ public void searchFile(File file,String w){ String line = null; try { BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file))); while((line = br.readLine())!=null){ if(line.contains(w)){ over.add(file); } } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } }

更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
