zoukankan      html  css  js  c++  java
  • Java小工具===》在目录内查找包含××(字符串)的文件,并显示行号

    package search;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    
    public class KeyWordSearch {
    	static String dir = "D:\\workspace\\OPlayer"; // 被查找的目录
    	static String keyWord = "init_decoders"; // 被搜索到关键字
    
    	public static void main(String args[]) {
    		File file = new File(dir);
    		keyWordSearch(file);
    	}
    
    	private static void keyWordSearch(File file) {
    		File[] files = file.listFiles();
    		for (int i = 0; i < files.length; i++) {
    			if (files[i].isDirectory()) {
    				keyWordSearch(files[i]); // 如果该file是目录,递归
    			} else {
    				fileSearch(files[i]); // 如果该file是文件,查找
    			}
    		}
    	}
    
    	private static void fileSearch(File file) {
    		try {
    			BufferedReader br = new BufferedReader(new FileReader(file));
    			String temp = "";
    			int i = 0;
    			while ((temp = br.readLine()) != null) {
    				i++;
    				if (temp.indexOf(keyWord) != -1) { // 如果改行包含关键字,输出文件名字和行号
    					System.out.println(file.getPath() + " --- in line ---> " + i);
    					br.close();
    					return;
    				}
    			}
    			br.close();
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    }
    

      

  • 相关阅读:
    假期十一
    假期十
    假期九
    假期八
    假期七
    假期六
    假期五
    假期四
    2020.02.11
    2020.02.10
  • 原文地址:https://www.cnblogs.com/oldfeel/p/2804754.html
Copyright © 2011-2022 走看看