如这些文件夹下全部都是png的图片,要想把他们全部转移到一个文件夹下面,并实现重新编号。使用java代码:
package com.company;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
File file=new File("F:\\ORL");//定义一个新的对象,指向特定的文件夹
File[] fileDirect=file.listFiles();//获得这个文件夹下面的所有文件
int i=0;
for(File s:fileDirect){
//遍历这个文件夹下面的所有文件
if (s.isDirectory()==true){
//如果是文件夹,那么获取里面的文件
File[] files=s.listFiles();
for (File f:files){
i++;
// File reName=new File(f.getParent()+"\\"+i+".jpg"); //给文件名加上新的名字:父文件夹的路径加上新的命名
// f.renameTo(reName);//将原来的文件名转换为新的文件名
// String filePath=reName.getAbsolutePath();//获取新的文件名的全路径
String filePath=f.getAbsolutePath();
String path="F:\\ORL\\"+i+".jpg";
BufferedInputStream bi=new BufferedInputStream(new FileInputStream(filePath));//缓冲输入流找到这个文件,记住一定要到文件,到文件夹是不能进行操作的
// if(i<10)
// {
// path="F:\\ORL\\s00"+i+".jpg";
// }
// else if(i<100){
// path="F:\\ORL\\s0"+i+".jpg";
// }
// else{
// path="F:\\ORL\\s"+i+".jpg";
// }
BufferedOutputStream bo=new BufferedOutputStream(new FileOutputStream(path));//将文件拷贝到新的地方,使用新的命名
int len;
while ((len=bi.read())!=-1){
bo.write(len);
}
bi.close();
bo.close();
}
}
}
}
}
运行结果:
把所有文件都转移到了一个文件夹下面,并实现了重新编号。