文件按照文件后缀名归类方案
import java.io.File;
import java.io.FilenameFilter;
public class TestFinal {
public static void main(String[] args) {
File file = new File("D:/bbb/test");
file.listFiles(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
if(new File(dir,name).isDirectory()) {
new File("D:/bbb/文件夹").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/文件夹/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".java")) {
new File("D:/bbb/JAVA").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/JAVA/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".txt")) {
new File("D:/bbb/TXT").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/TXT/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".c")) {
new File("D:/bbb/C").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/C/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".h")) {
new File("D:/bbb/H").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/H/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".css")) {
new File("D:/bbb/CSS").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/CSS/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".sql")) {
new File("D:/bbb/SQL").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/SQL/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".dll")) {
new File("D:/bbb/Dll").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/Dll/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".zip")) {
new File("D:/bbb/ZIP").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/ZIP/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".doc")) {
new File("D:/bbb/DOC").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/DOC/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".pptx")) {
new File("D:/bbb/PPTX").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/PPTX/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".js")) {
new File("D:/bbb/JS").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/JS/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".m")) {
new File("D:/bbb/M").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/M/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".xls")) {
new File("D:/bbb/XLS").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/XLS/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".bmp")) {
new File("D:/bbb/BMP").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/BMP/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".cpp")) {
new File("D:/bbb/CPP").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/CPP/" + name));
}
if(new File(dir,name).isFile() && name.endsWith(".jpg")) {
new File("D:/bbb/JPG").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/JPG/" + name));
}
if(new File(dir,name).isFile()) {
new File("D:/bbb/Other").mkdir();
new File(dir,name).renameTo(new File("D:/bbb/Other/" + name));
}
return true;
}
});
}
}
不用匿名内部类
import java.io.File;
public class Text {
public static void main(String[] args) {
File file = new File("C:\\Users\\小小三木\\Desktop\\test");
fileDocument(file);
}
public static void fileDocument(File file) {
if (!file.isDirectory()) {
return;
}
File[] listFiles = file.listFiles();
String pathParem = file.getPath();
for (File file2 : listFiles) {
if(file2.isDirectory()) {
File files = new File(pathParem + "/files");
files.mkdirs();
File shearFile = new File(files + "/" + file2.getName());
file2.renameTo(shearFile);
} else {
int index = file2.getName().lastIndexOf('.');
if (index >= 0) {
String nameFile = file2.getName().substring(index + 1);
File documentDir = new File(pathParem + "/" + nameFile);
documentDir.mkdirs();
File shearFile = new File(documentDir + "/" + file2.getName());
file2.renameTo(shearFile);
} else {
File notNameSuffix = new File(pathParem + "/NotNameSuffix");
notNameSuffix.mkdirs();
File shearFile = new File(notNameSuffix + "/" + file2.getName());
file2.renameTo(shearFile);
}
}
}
}
}