7

我正在尝试使用 Java 在驱动器中搜索文件,但我不确定如何设置条件。视频教程中给出的示例是用 Python 编写的。所以,基本上这里是从驱动器中检索文件列表的方法:

private static List<File> retrieveAllFiles(Drive service) throws IOException {
    List<File> result = new ArrayList<File>();
    Files.List request = service.files().list();

    do {

        try {
            FileList files = request.execute();
            result.addAll(files.getItems());
            request.setPageToken(files.getNextPageToken());
            } catch (IOException e) {
                System.out.println("An error occurred: " + e);
                request.setPageToken(null);
            }
    } while (request.getPageToken() != null &&
            request.getPageToken().length() > 0);

    return result;
}

现在,他们在这里提到File.List 方法接受 q 参数。我怎样才能做到这一点?当我尝试使用视频中给出的示例设置参数时,其中 q = "title contains 'fruit'",它不起作用。我究竟做错了什么?request.queue() 是否用于此目的?

谢谢

4

2 回答 2

5

我找到了。我认为 Google Drive SDK 文档需要不那么含糊。

Files.List request = service.files().list().setQ("mimeType = 'application/vnd.google-apps.folder'");
于 2013-07-21T17:48:50.253 回答