import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Main {
private static List<Entey> list = null;
public static void main(String[] args) {
File file = new File("C:\\Users\\lenovo\\Desktop\\82\\lib-localhost");
searchFile(file);
//过滤包含特定字符串的
//list = list.stream().filter((s) -> (s.getFileName().indexOf("Common") != -1)).collect(Collectors.toList());
//排序
Collections.sort(list,(str1,str2)-> str1.getSize().compareTo(str2.getSize()));
for(Entey e : list){
//delFile(e.toName());
System.out.println(e.toName());
}
}
public static void searchFile(File curFile){
File[] files = curFile.listFiles();
if(files != null){
Entey e = null;
list = new ArrayList<>();
for(File file:files){
if(file.isDirectory()){
searchFile(file);
}else if(file.isFile()){
e = new Entey();
e.setFileName(file.getAbsolutePath());
e.setSize(file.length()/1024);
list.add(e);
}
}
}
}
public static void delFile(String filePathAndName) {
try {
String filePath = filePathAndName;
filePath = filePath.toString();
java.io.File myDelFile = new java.io.File(filePath);
myDelFile.delete();
System.out.println("删除文件" + filePathAndName);
} catch (Exception e) {
System.out.println("删除文件操作出错");
e.printStackTrace();
}
}
private static class Entey{
private String fileName;
private Long size;
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public Long getSize() {
return size;
}
public void setSize(Long size) {
this.size = size;
}
@Override
public String toString() {
return "Entey [fileName=" + fileName + ", size=" + size + "]";
}
public String toName() {
return fileName;
}
}
}