哪个还没五杀?---文件查找

以前打LOL的时候,每个不熟悉的英雄都先拿来打自定义人机练手,拿到五杀就算合格了,并截图留念--。经过一年的屠杀,我已经有了125张五杀截图并给每个都命名了,如图:

那么现在问题来了,一共有132个英雄,还有哪7个英雄没拿过五杀呢?

手动查找真的要累死啊.....

那么我想到的就是编程来实现自动查找,把不存在的英雄输出。

我先是手打了英雄的集合的文本,中间以空格分开。

input.txt:

卡特 狐狸 赛恩 露露 奶妈 狮子狗 拉克丝 乌迪尔 凤凰 冰女 猪女 男刀 刀妹 卡牌 发条 加里奥 娜美 狼人 奥巴马 波比 莫甘娜 滑板鞋 火男 大头 扇子妈 天使 寒冰 寡妇 岩雀 巨魔 布隆 劫 盖伦 奎因 皇子 赵信 小丑 韦鲁斯 烬 人马 潘森 轮子妈 大树 龙龟 掘墓 ez 瑞雯 剑姬 剑圣 时光 艾克 巴德 vn 阿卡丽 剑魔 辛德拉 慎 克烈 金克斯 日女 杰斯 末日 三只手 兰博 武器 死歌 阿木木 蝎子 梦魇 千珏 狗头 沙皇 蛤蟆 男枪 俄洛伊 船长 泰坦 大嘴 小鱼 炼金 石头人 炸弹人 牛头 奥拉夫 凯南 豹女 吸血鬼 琴女 宝石 扎克 亚索 老鼠 皎月 女警 蔚 盲僧 蒙多 瑞兹 乌鸦 飞机 婕拉 鳄鱼 德莱文 机器人 维克兹 蚂蚱 大虫子 螳螂 卡萨丁 挖掘机

数据并不全,但已经包含了所有我没拿到过五杀的英雄。

接下来是程序:

import java.io.File;
import java.io.FileReader;

public class Main {
    static String path = "D:\\英雄联盟\\Game\\Screenshots\\人机五杀!";
    static String heroString = readFile().trim();
    static String[] heroes = heroString.split(" ");

    public static void ScanFile(String path) {
        File dir = new File(path);
        String[] fileList = dir.list();
        for (int i = 0; i < heroes.length; i++) {
            boolean isExist = false;
            for (int j = 0; j < fileList.length; j++) {
                if (fileList[j].contains(heroes[i])) {
                    isExist = true;
                    break;
                }
            }
            if (!isExist)
                System.out.println(heroes[i]);
        }
        // 判断是否中间有断开的序号
        // for (int i = 1; i <= 125; i++) {
        // boolean isExist = false;
        // for (int j = 0; j < fileList.length; j++) {
        // if (fileList[j].contains(String.valueOf(i))){
        // isExist = true;
        // break;
        // }
        // }
        // if(!isExist)
        // System.out.println(heroes[i]);
        // }
    }

    public static String readFile() {
        File file = new File(path + "\\input.txt");
        try {
            FileReader fileReader = new FileReader(file);
            String s = null;
            char[] c = new char[5000];
            fileReader.read(c);
            // System.out.println(c);
            return String.valueOf(c);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }

    }

    public static void main(String[] args) {
        ScanFile(path);
        // System.out.println(readFile().trim());
    }

}

最终成功找出来了我没拿到过五杀的英雄:

时间: 2024-09-27 04:34:29

哪个还没五杀?---文件查找的相关文章

git删除已经提交的包含敏感信息的文件(还没提交到远程仓库)

写好的代码已经提交了(但还没push到github),发现某个文件里包含密码.如果push的话,密码可就被公开了.如果在代码里改掉密码,再commit一次,也不行,历史提交记录还是会上传到github,人们还是会看到的. 怎么办,运行以下这两个命令可以把这个文件从刚刚的提交中去掉. git rm --cached 文件名 git commit --amend -CHEAD 用完以后,这个文件就变成了工作区状态,其他的修改呢,还是照刚才的提交提交了. 现在可以放心push了. 这个文件,我们稍加修

Linux基础入门--find(文件查找)

文件查找:在文件系统上查找符合条件的文件,条件是自己给出 Linux系统上实现工具:locate,find locate: 依赖于实现构建好的索引库,系统自动实现,一旦文件发生变化需要一定的周期时间更新.也可以手动更新数据.在索引构建过程中需要遍历整个文件系统,极消耗资源. 工作特点: 1.查询速度快 2.模糊查找 3.非实时查找 locate不能实时查找因此就到此为止 ============================================================ fi

linux文件查找(find,locate)

文件查找: locate: 非实时,模糊匹配,查找是根据全系统文件数据库进行的: # updatedb, 手动生成文件数据库 速度快 find: 实时 精确 支持众多查找标准 遍历指定目录中的所有文件完成查找,速度慢: find 查找路径 查找标准 查找到以后的处理运作 查找路径:默认为当前目录 查找标准:默认为指定路径下的所有文件 处理运作:默认为显示 匹配标准: -name 'FILENAME':对文件名作精确匹配 文件名通配: *:任意长度的任意字符 ? [] -iname 'FILENA

文件查找 find命令

文件查找 locate    非实时,查找是根据全系统文件数据库进行:模糊匹配:速度快: # updatedb, 手动生成文件数据库 find        实时:精确:支持众多查找标准(文件名,文件类型,文件权限查找,正则表达式匹配查找):遍历指定目录中的所有文件完成查找,速度慢: # find 查找路径 查找标准 查找到以后的处理运作 查找路径,默认为当前目录 查找标准,默认为指定路径下的所有文件 处理动作,默认为显示到屏幕 查找标准,匹配标准: -name 'FILENAME'  对文件名

文件查找命令find (笔记)未完待续

之前所学的grep egrep fgrep 都是用来查找文本中的某个字符匹配的 现在来学一下查找文件命令 locate find locate 此命令是非实时查找文件,它是根据全系统文件数据库进行查找的, 仅用模糊匹配,非精确查找 locate filename 即可实现查找其它相关文件 但是注意有时候如果系统是刚安装的有可能还没建立此数据库,使用该命令会提示查找不到数据库 不过不用担心使用updatedb即可自动生成数据库,生成数据库的时候有时候会很慢,这个根据用户的 磁盘上所放的东西多少决定

find 文件查找

目录 find文件查找 1.为什么要使用文件查找 2.根据文件名称查找-name 3.根据文件大小查找-size 4.根据文件类型查找-type f 5.根据文件时间查找-mtime 6.根据文件用户查找-user 7.根据文件权限查找-perm 8.find 处理动作 9.find 结合xargs 注意: find文件查找 1.为什么要使用文件查找 有些时候,我们可能会忘了某个文件所在的位置,此时就需要通过find来查找. 还有些时候,我想要找到,某个目录下,所有小于1k的文件. 还还有些时候

学习数据结构的第六天(一)(包括一些还没学习的,指导之后学习的要点)

现在看一下,set和map的作用,以及treeset的作用. 对于以后还需要学哪些: 对于相应的时间复杂度的分析.对于排序的相应内容,都是需要再看的. 什么最好.最坏之类的. 自写数据结构对于leetcode相应代码的实现也要学,在哪些部分去写private class 在哪些部分去写private interface,都要学. 对于之前学过的计算机网络.操作系统等知识,需要先复习已经学过的了.然后的话再去根据面试添加内容. set和map的相应内容: 如果说自己去写相应的实现, Set<Str

文件查找

grep, egrep, fgrep: 文本查找 文件查找: locate: 非实时,模糊匹配,查找是根据全系统文件数据库进行的: # updatedb, 手动生成文件数据库 速度快 find: 实时 精确 支持众多查找标准 遍历指定目录中的所有文件完成查找,速度慢: find 查找路径 查找标准 查找到以后的处理运作 查找路径:默认为当前目录 查找标准:默认为指定路径下的所有文件 处理运作:默认为显示 匹配标准: -name 'FILENAME':对文件名作精确匹配 文件名通配: *:任意长度

关于文件查找和解压缩

文件查找和解压缩在文件系统上查找符合条件的文件,文件查找的工具有两个,locate 和 find文件查找分为:            locate      非实时查找 (在数据库查找)             updatedb   更新数据库            经常用于搜索稳定的文件,比如配置文件            var/lib/mlocate/mlocate.db 数据库路径             find     实时查找 locate :       查询系统上预建的文件索引