如何在文件列表中搜索文件名

沙拉湾CM

我需要从文件名列表中找到一个文件名,并根据找到的结果启动两种方法。我试过了:

FileList result = service.files().list()
             .setPageSize(10)
             .setFields("nextPageToken, files(id, name)")
             .execute();
        List<File> files = result.getFiles();
        if (files == null || files.size() == 0) {
            System.out.println("No files found.");
        } else {
            System.out.println("Files:");
            for (File file : files) {
                System.out.printf("%s (%s)\n", file.getName(), file.getId());
                Boolean found = files.contains("XYZ");
                if(found)
                {
                    insertIntoFolder();
                } else {
                    createFolder();
                }
            }
        }

我需要XYZ从文件名列表(如sjh, jsdhf, XYZ, ASDF)中查找(文件名)。一旦我找到它,我需要停止搜索。如果名称与名称列表不匹配,我只需要在检查该列表中的所有名称后创建一个文件夹一次。

dimo414
Boolean found = files.contains("XYZ");

这条线有问题。files是一个File对象列表,其中没有一个与String "XYX". List.contains()本质上调用Object.equals()列表的每个元素,并且File.equals("XYZ")总是返回false.

如果您在 Eclipse 这样的 IDE 中编程,它应该在这一行显示警告,因为这是一个可以在编译时检测到的错误。

要确定 aFile中的 aList<File>是否具有与给定字符串匹配的文件名,您需要对文件名本身进行操作,因此上面的行应该是:

boolean found = file.getName().equals("XYZ");

根据究竟是什么你想匹配你可能想使用.getName().getAbsolutePath().toString()


使用PathJava 7 中引入API也是一个好主意,而不是File在这一点上本质上是遗留类的 。

如果您想要一个比手动循环查找匹配的文件更优雅的解决方案,您可以使用Files.newDirectoryStream(Path, Filter)它允许您定义Filter仅匹配某些文件谓词,例如

Files.newDirectoryStream(myDirectory, p -> p.getFileName().toString().equals("XYZ"))

File.list(FilenameFilter)是处理File对象的类似功能,但同样,Path如果可能,更喜欢使用API。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在压缩文件中搜索文本并仅获取文件名

来自分类Dev

如何在Shell脚本中搜索文件名/数据中的数字

来自分类Dev

如何在Shell脚本中搜索文件名/数据中的数字

来自分类Dev

如何在特定的Github存储库中搜索文件名

来自分类Dev

如何在所有快照程序包中搜索文件名?

来自分类Dev

如何在文件名中搜索多个单词(以任何顺序)-GUI(或终端)

来自分类Dev

如何在Perl中从文件名获取文件句柄?

来自分类Dev

如何在文件传输中显示文件名?

来自分类Dev

如何从Python中文件名列表中的文件名中删除扩展名?

来自分类Dev

如何使用ack搜索文件名

来自分类Dev

在AppCode中搜索文件名

来自分类Dev

如何在Powershell中拆分文件名并从中选择文件名?

来自分类Dev

如何在ffmpeg的输出文件名中包含输入文件名

来自分类Dev

Python:如何在目录名(不是单个文件名)中搜索特定的“字符串”

来自分类Dev

如何从Sky Drive获取文件名并显示在列表中

来自分类Dev

如何从Sky Drive获取文件名并显示在列表中

来自分类Dev

如何从提到的列表中获取文件名

来自分类Dev

Golang如何在Go中读取输入文件名

来自分类Dev

如何在python中获取Windows短文件名?

来自分类Dev

如何在Meteor中动态指定集合文件名?

来自分类Dev

如何在Mocha Reporter中获取测试文件名

来自分类Dev

如何在Monodevelop中设置文件名?

来自分类Dev

如何在Django中获取上传的文件名

来自分类Dev

如何在文件名中强制使用非法字符?

来自分类Dev

如何在Bash中获取文件名的通配符部分

来自分类Dev

如何在FileWatcher中更新文件名

来自分类Dev

如何在Openerp中获取上载的文件名

来自分类Dev

如何在db中哈希上载的文件名?

来自分类Dev

如何在许多文件名中添加空间

Related 相关文章

  1. 1

    如何在压缩文件中搜索文本并仅获取文件名

  2. 2

    如何在Shell脚本中搜索文件名/数据中的数字

  3. 3

    如何在Shell脚本中搜索文件名/数据中的数字

  4. 4

    如何在特定的Github存储库中搜索文件名

  5. 5

    如何在所有快照程序包中搜索文件名?

  6. 6

    如何在文件名中搜索多个单词(以任何顺序)-GUI(或终端)

  7. 7

    如何在Perl中从文件名获取文件句柄?

  8. 8

    如何在文件传输中显示文件名?

  9. 9

    如何从Python中文件名列表中的文件名中删除扩展名?

  10. 10

    如何使用ack搜索文件名

  11. 11

    在AppCode中搜索文件名

  12. 12

    如何在Powershell中拆分文件名并从中选择文件名?

  13. 13

    如何在ffmpeg的输出文件名中包含输入文件名

  14. 14

    Python:如何在目录名(不是单个文件名)中搜索特定的“字符串”

  15. 15

    如何从Sky Drive获取文件名并显示在列表中

  16. 16

    如何从Sky Drive获取文件名并显示在列表中

  17. 17

    如何从提到的列表中获取文件名

  18. 18

    Golang如何在Go中读取输入文件名

  19. 19

    如何在python中获取Windows短文件名?

  20. 20

    如何在Meteor中动态指定集合文件名?

  21. 21

    如何在Mocha Reporter中获取测试文件名

  22. 22

    如何在Monodevelop中设置文件名?

  23. 23

    如何在Django中获取上传的文件名

  24. 24

    如何在文件名中强制使用非法字符?

  25. 25

    如何在Bash中获取文件名的通配符部分

  26. 26

    如何在FileWatcher中更新文件名

  27. 27

    如何在Openerp中获取上载的文件名

  28. 28

    如何在db中哈希上载的文件名?

  29. 29

    如何在许多文件名中添加空间

热门标签

归档