package com.chinacache.utils;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
public class FileUtils {
private static final Logger logger = Logger.getLogger(FileUtils.class);
/**
* 移动文件到指定目录
*
* @param srcFile
* 被移动文件
* @param directory
* 目标目录
*/
public static void moveFile(File srcFile, File directory) {
renameFile(srcFile, new File(directory, srcFile.getName()));
}
public static void renameFile(File srcFile, File newFile) {
// 不存在退出
if (srcFile.exists()) {
try {
org.apache.commons.io.FileUtils.moveFile(srcFile, newFile);
} catch (IOException e) {
logger.error("move file [" + srcFile.getAbsolutePath()
+ "] error", e);
}
org.apache.commons.io.FileUtils.deleteQuietly(srcFile);
}
}
/**
* 移动一批文件到指定目录
*
* @param srcFiles
* 文件集合
* @param directory
* 目标目录
*/
public static void moveFiles(File[] srcFiles, File directory) {
for (int i = 0; i < srcFiles.length; i++) {
moveFile(srcFiles[i], directory);
}
}
/**
* 移动一批文件到指定目录
*
* @param srcFiles
* 文件集合
* @param directory
* 目标目录
*/
public static void moveFiles(List srcFiles, File directory) {
for (int i = 0; i < srcFiles.size(); i++) {
moveFile(srcFiles.get(i), directory);
}
}
public static boolean isAllDirectory(File... file) {
for (int i = 0; i < file.length; i++) {
if (!file[i].exists() || file[i].isFile() || !file[i].canRead()
|| !file[i].canWrite()) {
logger.error("Can't find this file["
+ file[i].getAbsolutePath()
+ "] or is not a Directory. or can't read or write");
return false;
}
}
return true;
}
/**
* 获取目标目录中文件大小大于指定值的文件
*
* @param srcDir
*