Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google drive api 检索所有文件修改_Google Drive Api - Fatal编程技术网

Google drive api 检索所有文件修改

Google drive api 检索所有文件修改,google-drive-api,Google Drive Api,我需要解析一个特定的文件夹,以查看是否存在文件夹标题。如果没有,那么我想创建它 下面的v2 c#代码将列出我的Google Drive just文件中的每个文件。如何修改它以仅返回单个文件夹的文件列表(使用文件夹资源ID)?我知道一切都是一个文件,包括文件夹 /// <summary> /// Retrieve a list of File resources. /// </summary> /// <param name="service"

我需要解析一个特定的文件夹,以查看是否存在文件夹标题。如果没有,那么我想创建它

下面的v2 c#代码将列出我的Google Drive just文件中的每个文件。如何修改它以仅返回单个文件夹的文件列表(使用文件夹资源ID)?我知道一切都是一个文件,包括文件夹

/// <summary>
    /// Retrieve a list of File resources.
    /// </summary>
    /// <param name="service">Drive API service instance.</param>
    /// <returns>List of File resources.</returns>
    public static List<File> retrieveAllFiles(DriveService service)
    {
        List<File> result = new List<File>();
        FilesResource.ListRequest request = service.Files.List();

        do
        {
            try
            {
                FileList files = request.Fetch();

                result.AddRange(files.Items);
                request.PageToken = files.NextPageToken;
            }
            catch (Exception e)
            {
                Console.WriteLine("An error occurred: " + e.Message);
                request.PageToken = null;
            }
        } while (!String.IsNullOrEmpty(request.PageToken));
        return result;
    }
//
///检索文件资源列表。
/// 
///驱动API服务实例。
///文件资源列表。
公共静态列表检索所有文件(DriveService服务)
{
列表结果=新列表();
fileResource.ListRequest请求=service.Files.List();
做
{
尝试
{
FileList files=request.Fetch();
result.AddRange(files.Items);
request.PageToken=files.NextPageToken;
}
捕获(例外e)
{
Console.WriteLine(“发生错误:+e.Message”);
request.PageToken=null;
}
}而(!String.IsNullOrEmpty(request.PageToken));
返回结果;
}

您可以使用
q
将结果限制为属于单个文件夹的文件,如下例所示:

'1234567' in parents
其中“1234567”是文件夹ID

要在C#中执行相同的查询,可以使用以下代码:

FilesResource.ListRequest request = service.Files.List();
request.Q = "'1234567' in parents";
或者,如果您只需要文件夹中文件的ID,则可以使用:

ChildrenResource.ListRequest request = service.Children.List(folderId);
ChildList children = request.Fetch();