Java-IO流实际运用(表情包搜索归类)

学习IO流已经很久了,但是一直都没实际运用过。今天在保存群聊里的表情包时候觉得效率太低,便写了一个简易的控制台程序帮我保存。
在这里插入图片描述

这就是qq存放图片的地址,以前是直接放一堆,不用提取了,现在改成这种多文件夹形式,人工一个一个打开未免太慢
上代码

public static void main(String[] args) {
    
    
        //设置文件路径,把22735改成自己计算机名即可
        File file = new File("C:\\Users\\计算机名\\Documents\\Tencent Files\\想要获取的QQ号\\Image\\Group2");
        fun(file);
    }

    public static void fun(File dir) {
    
    
        //调用listFiles方法对目录进行遍历
        File[] filearr = dir.listFiles();
        for (File file : filearr)
        {
    
    
            if (file.isDirectory())
            {
    
    
                fun(file);//判断如果是文件夹就继续调用遍历目录下内容的方法,形成递归
            }else {
    
    
                if(file.getName().indexOf(".")>0){
    
    
                    copy(file,new File("C:Users\\计算机名\\Documents\\Tencent Files\\想要获取的QQ号\\Image\\存放地址\\"+file.getName()));
                }
            }
        }
    }
    public static void copy(File file, File destFile)  {
    
    
        FileInputStream ins = null;
        FileOutputStream ios = null;
        try{
    
    
            ins = new FileInputStream(file);
            ios = new FileOutputStream(destFile);
            byte[] buf = new byte[1024];
            int size = 0;
            while((size = ins.read(buf))!=-1){
    
    
                ios.write(buf,0,size);
            }
        }
        catch (IOException e){
    
    
            e.printStackTrace();
        }
    }

其实原理很简单,就是从image一直向下寻找,形成递归查找,遇到后缀名为图片格式的就复制到想要存放的地址里面去
在这里插入图片描述
行了 一张一张看到自己喜欢的保存就行,以后再写个ai自动识别二次元妹妹自动保存…

猜你喜欢

转载自blog.csdn.net/qq_36008278/article/details/114881464