java遍历文件夹下所有图片_遍历指定文件夹下的所有图片,并复制到指定目录下…
大家好,又见面了,我是你们的朋友全栈君。
importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.IOException;importjava.util.ArrayList;importjava.util.List;importjavax.imageio.ImageIO;public classCopy
{/*** 遍历文件夹下的所有图片文件,并复制到指定文件夹下*/
static String srcfile = “E:/Images/照相摄像”;//源目录
static String filetype = “.jpg”;//关键字
static List flist = new ArrayList();//存放遍历的文件
public static voidmain(String[] args)
{
File file= newFile(srcfile);
File[] list=file.listFiles();//源文件夹
List flist1 = newArrayList();for(int i=0;i
flist1.add(list[i]);
}
searchDirectory(flist1);
wFile(flist,filetype);
System.out.println(“复制完成”);
}public static void searchDirectory(Listlist){
List dlist0 = new ArrayList();//一级目录
List dlist1 = new ArrayList();//一级目录下的子目录//遍历的文件夹,将文件和文件夹分类
for(File file: list){if(file.isDirectory()){
dlist0.add(file);
}else{
flist.add(file);//文件存放到文件list中
}
}/*** 遍历子文件夹
* 递归调用该方法,把目录和文件分开
**/
if(dlist0.size()>0||!dlist0.isEmpty()){for(int i=0;i
File[] list0=dlist0.get(i).listFiles();for(int j=0;j
dlist1.add(list0[j]);
}
}
searchDirectory(dlist1);
}return;
}//读写文件
public static void wFile(Listflist,String filetype){for(File file :flist){if(file.isFile()){//包含关键字
if(file.toString().toLowerCase().contains(filetype.toLowerCase())){//把文件写到指定 的文件夹中
try{
BufferedImage image= ImageIO.read(newFile(file.toString()));//指定要复制的路径
ImageIO.write(image, “jpg”, new File(“G:/images/”+file.getName()+”.jpg”));
}catch(IOException e)
{
e.printStackTrace();
}
}
}
}
}
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137840.html原文链接:https://javaforall.cn
相关文章
- java分层打印二叉树_基于Java的二叉树层序遍历打印实现
- java 论坛_5 个最好用的 Java 开源论坛系统
- 深入理解Java虚拟机(超级详细)「建议收藏」
- MySQL字段类型如何转为java_Java JDBC中,MySQL字段类型到JAVA类型的转换
- java 汉字乱码_Java中文乱码问题
- Java 池化技术你了解多少?
- JAVA数据库连接池_java与数据库的连接怎么实现
- Java递归写法_java递归调用
- java arraydeque poll,Java ArrayDeque「建议收藏」
- JAVA英文文献_java毕业论文参考文献
- Java中Stream操作
- 一道非常棘手的 Java 面试题:i++ 是线程安全的吗?
- Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day06】——Java基础篇
- Java学习笔记之四java进制转化详解编程语言
- Java 遍历类中的属性详解编程语言
- Java遍历List集合的三种方法详解编程语言
- Java synchronized 原理从开始到放弃详解编程语言
- ForEach遍历ArrayList并删除其中元素时抛出异常:java.util.ConcurrentModificationException以及解决办法详解编程语言
- Java实现Redis事务管理(redis事务java)
- 深入学习:Linux下Java环境建设与配置(linux下java环境)
- Java实现嵌入式MySQL的新解决方案(java嵌入式mysql)
- Java程序员的MySQL数据库之旅(java操作mysql数据库)
- 使用Java语言写Redis实现一个分布式缓存系统(用java写个redis)
- 收购Oracle收购Java重新定义软件开发未来(java被oracle)
- Java递归遍历目录的小例子