这么久没有写博客了,今天给大家分享一些多file文件的操作。一般可以用到清理垃圾获取文件大小 删除文件等操作,可以直接用于工具类里面,直接做操作便可以
public final class FileUtils {
public static long fileLen = 0;
public static void delFilesFromPath(File filePath) {
if (filePath == null){
return;
}
if (!filePath.exists()){
return;
}
File[] files = filePath.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile()) {
files[i].delete();
} else {
delFilesFromPath(files[i]);
files[i].delete();// 刪除文件夾
}
}
}
//获取文件的大小
public static String size(File filePath) {
if (filePath == null){
return "0字节";
}
if (!filePath.exists()){
return "0字节";
}
long fileLen2 = getFileLen(filePath);
String size = size(fileLen2);
return size;
}
public static long getFileLen(File filePath) {
fileLen = 0;
return getFileLenFromPath(filePath);
}
public static long getFileLenFromPath(File filePath) {
File[] files = filePath.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile()) {
fileLen += files[i].length();
} else {
getFileLenFromPath(files[i]);
}
}
return fileLen;
}
private FileUtils() {
}
public static String size(long size) {
if (size / (1024 * 1024 * 1024) > 0) {
float tmpSize = (float) (size) / (float) (1024 * 1024 * 1024);
DecimalFormat df = new DecimalFormat("#.##");
return "" + df.format(tmpSize) + "GB";
} else if (size / (1024 * 1024) > 0) {
float tmpSize = (float) (size) / (float) (1024 * 1024);
DecimalFormat df = new DecimalFormat("#.##");
return "" + df.format(tmpSize) + "MB";
} else if (size / 1024 > 0) {
return "" + (size / (1024)) + "KB";
} else
return "" + size + "B";
}