/**
* 获取指定目录下的所有文件的名字
* @param path 目标目录路径
*
*/
public static ArrayList<String> getFiles(String path) {
ArrayList<String> files = new ArrayList<String>();
File file = new File(path);
File[] tempList = file.listFiles();
for (int i = 0; i < tempList.length; i++) {
if (tempList[i].isFile()) {
files.add(tempList[i].getName());
}
}
return files;
}
/**
* 把一个目录下的所有的文件移动到另外一个目录下
* @param path 目标目录路径
*
*/
public static void IOCopy(String path,String path1){
File file = new File(path);
File file1 = new File(path1);
if(!file.exists()){
CAUDAASLog.error(log,file.getName()+"文件不存在");
}else{
CAUDAASLog.info(log,file.getName()+"文件存在");
}
byte[] b = new byte[(int) file.length()];
if(file.isFile()){
try {
FileInputStream is= new FileInputStream(file);
FileOutputStream ps= new FileOutputStream(file1);
is.read(b);
ps.write(b);
is.close();
ps.close();
} catch (Exception e) {
e.printStackTrace();
}
}else if(file.isDirectory()){
if(!file.exists())
file.mkdir();
String[] list = file.list();
for(int i=0;i<list.length;i++){
IOCopy(path+"/"+list[i], path1+"/"+list[i]);
}
}
}
/**
* 删除空目录
* @param dir 将要删除的目录路径
*/
public static void doDeleteEmptyDir(String dir) {
boolean success = (new File(dir)).delete();
if (success) {
CAUDAASLog.info(log,dir+ "目录已删除");
} else {
CAUDAASLog.error(log,dir+ "目录未删除");
}
}
/**
* 递归删除目录下的所有文件及子目录下所有文件
* @param dir 将要删除的文件目录
* @return boolean Returns "true" if all deletions were successful.
* If a deletion fails, the method stops attempting to
* delete and returns "false".
*/
public static boolean deleteDir(File dir) {
try {
if (dir.isDirectory()) {
String[] children = dir.list();//递归删除目录中的子目录下
for (int i=0; i<children.length; i++) {
//删除进入下级目录
CAUDAASLog.info(log,"删除进入下级目录"+dir+"/"+ children[i]);
boolean success = deleteDir(new File(dir+"/"+ children[i]));
if (!success) {
CAUDAASLog.error(log,"删除文件失败"+dir);
return false;
}
}
}
boolean flag = dir.delete();
CAUDAASLog.info(log,flag+"dd");//删除文件成功
if(flag == true)
{
CAUDAASLog.info(log,"删除"+dir+"成功");//删除文件成功
return true;
}
else {
CAUDAASLog.error(log,"删除"+dir+"失败");
return false;
}
} catch (Exception e) {
CAUDAASLog.error(log, "删除文件出现异常:", e);
throw e;
}
}