/**(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)
* pTitle: 目录操作/p
* pDescription: 演示列目录下的文件,和移动一个目录/p
* pCopyright: Copyright (c) 2003/p
* pFilename: Dir.java/p
* @version 1.0
*/
import java.io.*;
public class Dir{
/**
*br方法说明:实现目录列表
*br输入参数:
*br返回类型:
*/
public String[] DirList(String pathName){
try{
File path = null;
String[] fileList;
//如果没有指定目录,则列出当前目录。
if(pathName.equals(""))
path = new File(".");
else
path = new File(pathName);
//获取目录文件列表
if(path.isDirectory())
fileList = path.list();
else
return null;
return fileList;
}catch(Exception e){
System.err.println(e);
return null;
}
}
/**
*br方法说明:移动一个目录
*br输入参数:String sou 源目录, String obj 新目录
*br返回类型:
*/
public boolean DirMove(String sou, String obj){
try{
//检查源文件是否存在
boolean sexists = (new File(sou)).isDirectory();
if(!sexists) return false;
boolean oexists = (new File(obj)).isDirectory();
//目标目录不存在,建立一个
if(!oexists){
(new File(obj)).mkdirs();
}
File file = new File(sou);
File dir = new File(obj);
//移动目录
boolean success = file.renameTo(new File(dir, file.getName()));
if (!success) {
System.out.println("copy error!");
return false;
}
else return true;
}catch(Exception e){
System.out.println(e);
return false;
}
}
/**
*br方法说明:主方法
*br输入参数:
*br返回类型:
*/
public static void main(String[] args){
Dir d = new Dir();
if(args.length==0){
return;
}else{
String cmd = args[0];
if(cmd.equals("list")){
if(args.length!=2) return;
String[] sTemp = d.DirList(args[1]);
for(int i=0;isTemp.length;i++)
System.out.println(sTemp[i]);
}else if(cmd.equals("move")){
if(args.length!=3) return;
d.DirMove(args[1],args[2]);
}
}
}
}