文件删除器(一)

文件删除器FileDeleter最开始的目的是为了删除.svn文件,2008年在GL时,当时由于XP系统出了问题,不能搜索文件,工作中有时需要删除.svn文件,所以就写了个程序来实现。当时名字叫fileManager。
现在有空,就打算把以前写过的程序进行整理。于是就有个现在的文件删除器FileDeleter。现在的文件删除器FileDeleter的核心逻辑和以前没有什么变化,但是做了些优化,操作上更方便。现在不仅支持GUI模式,而且支持快速的控制台模式。
程序入口:Launcher.java
运行参数
参数1:可选参数。 表示要执行文件删除操作的文件夹路径。
参数2:可选参数。 表示要删除的文件和文件夹名列表,用逗号或分号都可以进行分割。
参数3:可选参数。 如果提供,只能是/q.表示是否使用快速的控制台模式来经常删除操作。默认是GUI模式。
文件列表
该程序只有3个文件:
Launcher.java :用于启动程序。
FileDeleterFrame.jav a:用于和用户交互。
Worker.java :用于逻辑出来。
需要的lib:《 Console》,《SystemConsole》,《TextAreaConsole
源码文件 Launcher.java:
package com.teleca.robin;

import java.awt.Dimension;
import java.awt.Toolkit;

import javax.swing.JFrame;

public class Launcher {
    /**
     * @param args the command line arguments
     */
   public static void main(String[] args) {
        // TODO code application logic here
     String folderRoot=null;
     String fileNames=null;
     boolean quickMode=false;
     if(args.length>0)
     folderRoot=args[0];
     if(args.length>1)
     fileNames=args[1];
     if(args.length>2&&args[2].equals("/q"))
     quickMode=true;
     if(quickMode)
     {
     startQuickly(folderRoot,fileNames);
     }
     else
     {
     startGUI(folderRoot,fileNames);
     }
    }
    static void startGUI(String folderRoot,String fileNames)
    {
        JFrame fileDeleter=new FileDeleterFrame( folderRoot,fileNames);
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension frameSize =fileDeleter.getSize();
        if (frameSize.height > screenSize.height) {
            frameSize.height = screenSize.height;
        }
        if (frameSize.width > screenSize.width) {
            frameSize.width = screenSize.width;
        }
        fileDeleter.setLocation((screenSize.width - frameSize.width) / 2,
                (screenSize.height - frameSize.height) / 2);
        fileDeleter.setVisible(true);
    }
    static void startQuickly(String folderRoot,String fileNames)
    {
     if(folderRoot==null||folderRoot.length()==0)
     {
     System.out.println("In quick mode,the var folder root must be provided");
     }
     Worker worker=new Worker(folderRoot,fileNames);
     worker.start();
    }
}

你可能感兴趣的:(文件删除器(一))