java遍历文件夹下所有图片_遍历指定文件夹下的所有图片,并复制到指定目录下…

java遍历文件夹下所有图片_遍历指定文件夹下的所有图片,并复制到指定目录下…importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.IOException;importjava.util.ArrayList;importjava.util.List;importjavax.imageio.ImageIO;publicclassCopy{/***遍历文件夹下的所有图片文件,并复制到指定文件夹…

大家好,又见面了,我是你们的朋友全栈君。

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.net/137840.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • RedHat安装yum+配置国内yum源

    RedHat安装yum+配置国内yum源新安装了redhat6.5安装后,登录系统,使用yumupdate更新系统。提示:ThissystemisnotregisteredtoRedHatSubscriptionMa

    2022年7月1日
    24
  • 阿里云轻量服务器开放指定端口吗_阿里云服务器怎么远程连接

    阿里云轻量服务器开放指定端口吗_阿里云服务器怎么远程连接第一次使用云服务暴露端口,踩了一些坑总结一下整个过程首先要在防火墙中添加对应端口,然后,进入安全组添加指定的端口,才算完成整个设置一、防火墙设置1、进入服务器选择防火墙,点击“添加规则”2、输入指定端口号,协议选择TCP就行,完成后点击确定二、在安全组中添加端口1、如果没有安全组时点击“创建安全组”,有则点击“配置规则”2、点击“手动添加”3、输入对应的端口号、源地址,点击保存整个设置过程就是这样,整个设置很简单,但是要是漏掉一个环节对新手来也是麻烦的…

    2022年10月2日
    2
  • ETH挖矿显卡算力大全[通俗易懂]

    ETH挖矿显卡算力大全[通俗易懂]大家买显卡挖ETH,肯定最关心算力了,这里我整理一版,供大家参考,目前只有主流的整理上了,后期会完善更多的供大家参考!欢迎大家加入大力矿工群:621159725  软件下载:百度云盘链接:https://pan.baidu.com/s/1o9tw41k密码:vkyi…

    2022年6月13日
    62
  • SpringMVC笔记(1)

    SpringMVC笔记(1)

    2021年11月11日
    44
  • shell sort排序是从小到大_shell sort

    shell sort排序是从小到大_shell sortsort参数:-n:按数字排序,而不是字符-M:用三字符月份名按月份排序-b:排序时忽略起始的空白-c:不排序,如果数据无序也不要报告-d:仅考虑空白和字母,不考虑特殊字符-f:默认情况下,会将大写字母排在前面,这个参数会忽略大小写-g:按通用数据来排序(跟-n不同,把值当浮点数来排序,支持科学计数法表示的值)-i:在排序时忽略不可打印字符-k:排序从POS1位置开始,如果指定了POS2的话,到POS2位置结束-m:将两个已排序数据文件合并-o:将排序结果写出到指定文件中-R:按

    2022年8月12日
    11
  • Sublime Text 3 注册/激活方法

    Sublime Text 3 注册/激活方法Sublime是一款很好用的编辑器,虽然是免费使用,但是经常会弹出吆喝着让你购买(purchase)的弹窗,对一名优秀的强迫症来说看久了还是很烦人的。而且现在网上很多注册码都不可用。那么要怎么解决呢?下面提供两种解决方案。(我是在win10系统上操作的)二、方案方案一[1]1)建立一个bat文件(随便取个名字,如“runHost.bat”),复制以下代码到…

    2022年7月27日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号