我们注意到Google Drive API Javascript 允许您列出特定文件夹中的所有文件,但它只会从文件中提供基本详细信息。如果我们想要了解更多文件名,我们需要再次为每个文件查询API。有没有办法可以列出文件的更多细节,例如单个文件夹列表查询中的文件名?
由于
答案 0 :(得分:4)
我猜您使用了Children.list()。它只列出了孩子的id,这不是你想要的功能。您应该在父母中使用Files.list()参数q =“'{{FOLDER_ID}}',它会列出您想要的特定文件夹子项的所有文件及其详细信息。
答案 1 :(得分:2)
我做了很多谷歌搜索这个问题,但答案就在这里。您必须使用以下代码片段:
Files.List request = mService.files().list().setQ("'Your Folder ID Here' in parents");
FileList files = request.execute();
if (files != null) {
for (File file : files.getItems()) {
// Meta data
Log.i("", "Title: " + file.getTitle());
Log.i("", "Description: " + file.getDescription());
Log.i("", "MIME type: " + file.getMimeType());
}
}
我相信它会对你有用。
答案 2 :(得分:0)
使用googleApis V3,您可以做到。 这是示例代码:
string FolderId = "1lh-YnjfDFMuPVisoM-5p8rPeKkihtw9";
// Define parameters of request.
FilesResource.ListRequest listRequest = DriveService.Files.List();
listRequest.PageSize = 10;
listRequest.Q = "'" + FolderId + "' in parents and trashed=false";
listRequest.Fields = "nextPageToken, files(*)";
// List files.
IList<Google.Apis.Drive.v3.Data.File> files = listRequest.Execute()
.Files;
希望获得帮助。
答案 3 :(得分:-1)
不要担心这个问题,这很容易。如果要从特定的FOLDER获取所有文件和文件夹,只需将此代码复制并粘贴到项目中,它将从特定文件夹中检索所有文件和文件夹。 注意:您应该拥有自己的文件夹ID
List<File> result = new ArrayList<File>();
Files.List request = null;
try {
request = mService.files().list();//plz replace your FOLDER ID in below linez
FileList files = request.setQ("'"+MyFoler_Id+"'in parents and trashed=false").execute();
result.addAll(files.getItems());
request.setPageToken(files.getNextPageToken());
}
catch (IOException e)
{
System.out.println("An error occurred: " + e);
request.setPageToken(null);
}
//打印出我们检索到的文件和文件夹标题。
for(File f:result)
{
System.out.println("My recvd data "+f.getTitle());
}