业务需求,需要将图片从一个文件夹转移到另外一个文件夹,测试代码如下:
package com.yangfong.javase;
import java.io.*;
import java.util.*;
/**
* Created by dell on 2017-08-24.
*/
public class ReadFileFromDirectory {
public static List
getFiles(String path){
File root = new File(path);
List
files = new ArrayList
();
if(!root.isDirectory()){
files.add(root);
}else{
File[] subFiles = root.listFiles();
for(File f : subFiles){
files.addAll(getFiles(f.getAbsolutePath()));
}
}
return files;
}
public static void main(String[] args) throws IOException {
List
files = getFiles("C:\\Users\\dell\\Desktop\\images");
File newFiles = new File("C:\\Users\\dell\\Desktop\\newImages");
newFiles.mkdirs();
files.sort(new Comparator
() { @Override public int compare(File f1, File f2) { if(f1.lastModified() > f2.lastModified()) { return 1; } else if (f1.lastModified() == f2.lastModified()) { return 0; } else { return -1; } } }); for(File file : files){ FileInputStream fis = new FileInputStream(file); FileOutputStream fos = new FileOutputStream(new File("C:\\Users\\dell\\Desktop\\newImages\\" + file.lastModified() + ".jpg")); byte[] read = new byte[1024]; int len = 0; while((len = fis.read(read))!= -1){ fos.write(read,0,len); } fis.close(); fos.flush(); fos.close(); file.delete(); System.out.println(file.getName() + file.lastModified()); } System.out.println(files.size()); } }
源文件夹和目标文件夹路径也可以是网络路径,可自己灵活配置