使用Java在Google Drive SDK中搜索文件(包含条件)

时间:2013-07-21 17:31:49

标签: java google-drive-api

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

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;
}

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

谢谢

2 个答案:

答案 0 :(得分:6)

答案 1 :(得分:5)

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

Files.List request = service.files().list().setQ("mimeType = 'application/vnd.google-apps.folder'");