<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    march alex's blog
    hello,I am march alex
    posts - 52,comments - 7,trackbacks - 0
    之前寫過FileHelper類,其中的readFile和writeFile方法分別用于文件的讀和寫。這次在原來的基礎(chǔ)上添加了如下方法:
    • listFiles
      • 用于遞歸地查找一個目錄下的所有文件并輸出。
    • hasWords
      • 用于判斷一個文件中是否含有某一關(guān)鍵詞。
    • findFilesContainsWords
      • 遞歸地查找某一目錄下所有包含某一關(guān)鍵字的所有文件(這里我加了一個過濾器,即我只找了所有后綴為“.h”的文件)。
    加了新功能后的FileHelper類代碼如下:
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileReader;
    import java.io.FileWriter;



    public class FileHelper {
        public static String readFile(String filename) throws Exception {
            BufferedReader reader = new BufferedReader(new FileReader(filename));  
            String ans = "", line = null;
            while((line = reader.readLine()) != null){
                ans += line + "\r\n";
            }
            reader.close();
            return ans;
        }
        public static void writeFile(String content, String filename) throws Exception {
            BufferedWriter writer  = new BufferedWriter(new FileWriter(filename));
            writer.write(content);
            writer.flush();
            writer.close();
        }
        
        public static void listFiles(String path) {
            File file = new File(path);
            File[] files = file.listFiles();
            if(files == null
                return;
            for(File f : files) {
                if(f.isFile()) {
                    System.out.println(f.toString());
                } else if(f.isDirectory()) {
                    System.out.println(f.toString());
                    listFiles(f.toString());
                }
            }
        }
        public static boolean hasWords(String file, String words) {
            try {
                String s = readFile(file);
                int w_len = words.length();
                int len = s.length();
                for(int i=0;i+w_len<=len;i++) {
                    if(s.substring(i, i+w_len).equals(words))
                        return true;
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return false;
        }
        public static void findFilesContainsWords(String path, String words) throws Exception {
            File file = new File(path);
            File[] files = file.listFiles();
            if(files == nullreturn;
            for(File f : files) {
                if(f.isFile()) {
                    String s = f.toString();
                    int s_len = s.length();
                    if(s.substring(s_len-2, s_len).equals(".h") == falsecontinue// add filter
                    if(hasWords(f.toString(), words))
                        System.out.println(f.toString());
                } else if(f.isDirectory()) {
                    findFilesContainsWords(f.toString(), words);
                }
            }
        }
        
        public static void main(String[] args) throws Exception {
            //String ans = readFile("D:\\input.txt");
            
    //System.out.println(ans);
            
    //writeFile(ans, "D:\\output.txt");
            
    //findFilesContainsWords("D:\\clamav-0.98.6", "scanmanager");//在IDE中找
            if(args.length != 1) {
                System.out.println("Usage : \"D:\\clamav-0.98.6\" words");
                return;
            }
            findFilesContainsWords("D:\\clamav-0.98.6", args[0]);//在命令行中找
        }
    }
    posted on 2015-03-10 16:11 marchalex 閱讀(588) 評論(0)  編輯  收藏 所屬分類: java小程序
    主站蜘蛛池模板: 欧洲精品成人免费视频在线观看| 亚洲精品视频在线观看你懂的| 亚洲国产精品成人综合色在线| 免费国产人做人视频在线观看| 在线观看免费视频网站色| 亚洲精品成人图区| 国产乱子伦精品免费无码专区| 叮咚影视在线观看免费完整版| 亚洲色精品三区二区一区| 亚洲情a成黄在线观看| 16女性下面无遮挡免费| 全部一级一级毛片免费看| 久久亚洲一区二区| 国产免费av片在线无码免费看| 日本中文字幕免费高清视频| 亚洲AV无码一区二区三区牲色| 亚洲熟妇av一区二区三区| 国产精品无码免费播放| 十八禁视频在线观看免费无码无遮挡骂过| 亚洲国产激情在线一区| 亚洲精品国产精品乱码视色| 成年女人午夜毛片免费视频| 99久久国产精品免费一区二区| 亚洲爆乳大丰满无码专区| 亚洲国产精品久久久久婷婷老年| 日本一区免费电影| 中国人xxxxx69免费视频| 亚洲免费视频一区二区三区| 亚洲人成人无码.www石榴 | 国产精品深夜福利免费观看| 91久久青青草原线免费| 一区二区三区视频免费观看| 亚洲精品国产摄像头| 337p日本欧洲亚洲大胆色噜噜| 久久久久国产亚洲AV麻豆 | 亚洲AV永久青草无码精品| 国产美女无遮挡免费视频网站| 亚欧免费视频一区二区三区| 大地资源中文在线观看免费版 | 18禁美女黄网站色大片免费观看 | 国产免费AV片无码永久免费|