我正在尝试仅下载根目录中的文件。目前我没有指定任何文件夹,因为我不知道如何下载其他文件夹中不是根的最新文件。我想要的只是root中的文件。获取文件和下载URL的代码如下:
([MGK]B)
我想只下载根文件中的所有文件,而不是任何其他文件夹。任何帮助将不胜感激。
答案 0 :(得分:2)
您需要使用Q参数进行搜索
q string用于过滤文件结果的查询。请参阅“搜索 文件“支持语法指南。
发送类似以下内容的内容将返回所有不是父目录的文件夹。
父母mimeType!='application / vnd.google-apps.folder'和'root'
答案 1 :(得分:1)
有许多考虑因素。
你的第3行需要
字符串q =" trashed = false和' root'在父母和mimeType!=' application / vnd.google-apps.folder' "
FileList result = serv.files()。list()。setFields(" *")。setQ(q).setMaxResults(10).execute();
您需要注意,这将最多返回10个结果,但更重要的是,您需要注意没有最低结果数。这意味着,如果您有11个文件,那么可能在第一次迭代中获得10,在第二次迭代中获得1。但是,您还可以获得1和10,或3和6和2,或0和0以及1和10.您需要继续获取结果,直到getNextPageToken() == null
的值。你的行
if(listA == null || listA.isEmpty()){
应该是
if(result.getNextPageToken()== null){
我意识到您已从官方文档中复制/粘贴,但遗憾的是文档错误。