import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class TestFile {
public static void main(String[] args){
File file = new File("D:\\oldDir");
listDir(file); //列出当前路径下的所有文件以及文件夹路径
}
/**
* 列出当前路径下的所有文件路径
* @param file
*/
public static void listDir(File file){
String newPath = "D:\\newDir";
if(file.isDirectory()){ // 是一个目录
// 列出目录中的全部内容
File results[] = file.listFiles();
if(results != null){
for(int i=0;i<results.length;i++){
listDir(results[i]); // 继续一次判断
}
}
}else{ // 是文件
String fileStr = (file.getName()).toString();
String fileFormat = "JPG,PNG,MP4";
String suffixStr = "";
if(null != fileStr && !"".equals(fileStr)){
suffixStr = fileStr.substring(fileStr.lastIndexOf(".")+1,
fileStr.length());
if(fileFormat.indexOf(suffixStr.toUpperCase()) != -1){
newPath = newPath + "/" + fileStr;
copyFile(file,newPath);
}
}
}
//file.delete(); //删除!!!!! 根目录,慎操作
//获取完整路径
System.out.println(file);
}
/**
* 拷贝文件到指定目录
* @param oldFile
* @param newPath
*/
public static void copyFile(File oldFile, String newPath){
try{
if (oldFile.isFile()) {
FileInputStream input = new FileInputStream(oldFile);
FileOutputStream output = new FileOutputStream(newPath);
byte[] b = new byte[1024 * 5];
int len;
while ((len = input.read(b)) != -1) {
output.write(b, 0, len);
}
output.flush();
output.close();
input.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}
Java 列出文件夹下所有文件,符合条件的文件复制到指定目录
猜你喜欢
转载自blog.csdn.net/llag_haveboy/article/details/84780836
今日推荐
周排行