在google drive v3和.net中获取文件扩展名

时间:2016-03-21 07:30:27

标签: google-drive-api

如何在Google Drive V3中获取文件扩展名。我正在使用.net,这是获取扩展名的示例代码,但它不起作用!任何建议都会对我有所帮助。

UserCredential凭证;

        using (var stream =
            new FileStream("client_secret.json", FileMode.Open, FileAccess.Read))
        {
            string credPath = System.Environment.GetFolderPath(
                System.Environment.SpecialFolder.Personal);
            credPath = Path.Combine(credPath, ".credentials/drive-dotnet-quickstart");

            ClientSecrets sec = GoogleClientSecrets.Load(stream).Secrets;

            credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                sec,
                Scopes,
                "user",
                CancellationToken.None,
                new FileDataStore(credPath, true)).Result;
            Console.WriteLine("Credential file saved to: " + credPath);

        }


        // Create Drive API service.
        var service = new DriveService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = ApplicationName,
        });

        // Define parameters of request.
        FilesResource.ListRequest listRequest = service.Files.List();
        listRequest.PageSize = 10;
        // List files.
        IList<Google.Apis.Drive.v3.Data.File> files = listRequest.Execute().Files;

        Console.WriteLine("Files:");
        if (files != null && files.Count > 0)
        {
            foreach (var file in files)
            {
                Console.WriteLine(file.FileExtension);
                Console.WriteLine(file.FullFileExtension);

1 个答案:

答案 0 :(得分:0)

您的文件是在驱动器中创建还是上传到驱动器中?我成功获得了驱动器中上传文件的文件扩展名。我在文件元数据中使用了fileExtension。在这个SO question中,我得到了一个在驱动器中上传我自己的文件的提示,因为我也无法在驱动器中获取文件的文件扩展名(这些文件是在未上传的驱动器中创建的)。它还解释了在驱动器中创建的文件不会消耗任何驱动器配额,因此文档的fileExtension与它们无关。