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 姚文超 閱讀(105) 評論(0)  編輯  收藏

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


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 山西省| 黄浦区| 华蓥市| 邵阳市| 高邑县| 商水县| 奇台县| 平顶山市| 雷波县| 章丘市| 太保市| 兴文县| 三台县| 桂阳县| 南安市| 婺源县| 定远县| 乌兰浩特市| 宁乡县| 彭州市| 岑溪市| 桐乡市| 友谊县| 靖宇县| 楚雄市| 堆龙德庆县| 探索| 大埔县| 团风县| 报价| 平度市| 绥德县| 休宁县| 商洛市| 彩票| 海伦市| 慈溪市| 泸定县| 鸡东县| 金湖县| 泗水县|