posts - 20,  comments - 2,  trackbacks - 0

          作者: tianshi0253  鏈接:http://tianshi0253.javaeye.com/blog/203419  發表時間: 2008年06月15日

          聲明:本文系JavaEye網站發布的原創博客文章,未經作者書面許可,嚴禁任何網站轉載本文,否則必將追究法律責任!

          包括四個文件,一個具體實現類,一個接口類,一個工廠類,一個調用類。

           FileSeacher.java

          package com.jqqd.ywc;
          
          import java.io.IOException;
          
          public interface FileSeacher {
          	void seacherFile(String s)throws IOException;
          	void seacherFolder(String s);
          }
          

           

           

          FileSeacherImpl.java

          package com.jqqd.ywc;
          
          import java.io.File;
          import java.io.FileNotFoundException;
          import java.io.FileOutputStream;
          import java.io.IOException;
          
          public class FileSeacherImpl implements FileSeacher {
          
          	static FileOutputStream outFile;
          
          	static {
          		try {
          			outFile = new FileOutputStream("D:/seach_log.dat");
          		} catch (FileNotFoundException e) {
          			e.printStackTrace();
          		}
          	}
          
          	public void seacherFile(String s) throws IOException {
          		File dir = new File(s);
          		if (dir.exists()) {
          			if (dir.isFile()) {
          				System.out.println(s + " is an file!");
          				writeToFile(s);
          			} else {
          				File[] dirList = dir.listFiles();
          				for (int i = 0; i < dirList.length; i++) {
          					if (dirList[i].isFile()) {
          						System.out.println(dirList[i] + " is an file!");
          						writeToFile(dirList[i].toString() + "\n");
          					} else {
          						seacherFile(dirList[i].toString());
          					}
          				}
          			}
          		} else {
          			System.out.println(s + "is not existed!");
          		}
          	}
          
          	private void writeToFile(String content) {
          		try {
          			outFile.write(content.getBytes());
          		} catch (IOException e) {
          			e.printStackTrace();
          		}
          	}
          
          	public void seacherFolder(String s) {
          		// TODO Auto-generated method stub
          		File dir = new File(s);
          		if (dir.exists()) {
          			if (dir.isFile()) {
          				System.out.println(s + " is an file!");
          			} else {
          				writeToFile(s+ " is an folder\n");
          				File[] dirList = dir.listFiles();
          				for (int i = 0; i < dirList.length; i++) {
          					if (dirList[i].isFile()) {
          						System.out.println(dirList[i].toString() + " is an file!");
          					} else {
          						writeToFile(dirList[i].toString() + " is an folder\n");
          						seacherFolder(dirList[i].toString());
          					}
          				}
          			}
          		}
          	}
          
          }

           

           

           Factory.java

          package com.jqqd.ywc;
          import java.io.IOException;
          
          import com.jqqd.ywc.FileSeacherImpl;
          
          public class Factory {
          	public static void seacherFile(String s)throws IOException
          	{
          		 new FileSeacherImpl().seacherFile(s);
          	}
          	
          
          }

           UseFactory.java

          package com.jqqd.ywc;
          import java.io.IOException;
          
          import com.jqqd.ywc.Factory;
          
          public class useFachory {
          	
          	
          	public static void main(String[] args)
          	{
          		String s = "F:/";
          		try {
          			Factory.seacherFile(s);
          		} catch (IOException e) {
          			// TODO Auto-generated catch block
          			e.printStackTrace();
          		}
          	}
          	
          }
          

           

           


          本文的討論也很精彩,瀏覽討論>>


          JavaEye推薦




          文章來源:http://tianshi0253.javaeye.com/blog/203419
          posted on 2008-06-15 04:04 姚文超 閱讀(224) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 宜昌市| 绍兴市| 唐山市| 郓城县| 新建县| 永宁县| 灌云县| 兴山县| 巴东县| 萨嘎县| 神池县| 白玉县| 西昌市| 陕西省| 克什克腾旗| 嵩明县| 壤塘县| 白玉县| 上思县| 六枝特区| 会同县| 德庆县| 绥芬河市| 周至县| 揭东县| 乌拉特中旗| 和平区| 江北区| 始兴县| 宣武区| 会泽县| 安达市| 北碚区| 航空| 临朐县| 凭祥市| 曲松县| 东城区| 张家口市| 通河县| 茌平县|