就是想将指定目录下的所有文件和文件夹名字存到 D:\demo.txt 中, 功能是实现了,但是感觉写的不怎么好。
尤其是上边的那个单例设计,不想加同步代码块,还想实现饿汉式。。该如何去解决?
求各位看官给优化下,感激不尽!!
- class Single
- {
- private Single(){}
- static FileWriter fw=null;
- public static FileWriter sh()throws Exception
- {
- if(fw==null)
- fw=new FileWriter("D:\\demo.txt");
- return fw;
- }
- }
- class Demo4
- {
- public static void main(String[] args)throws Exception
- {
- File f=new File("D:\\Program Files\\打地鼠");
- show1(f,0);
- }
- public static void show1(File f,int num)throws Exception
- {
- File file[]=f.listFiles();
- if(file!=null){
- for(int x=0;x<file.length;x++)
- {
- for(int y=0;y<num;y++)
- Single.sh().write("\t");
- if(num!=0)
- Single.sh().write("|--");
- Single.sh().write(file[x].toString()+"\r\n");
- if(file[x].isDirectory())
- {
- num++;
- show1(file[x],num);
- num--;
- }
- Single.sh().flush();
- }
- }
- }
- }
复制代码
|
|