繁体   English   中英

子文件夹Google驱动器中的现有文件

[英]existing file in subfolder google drive

我想用vb.net验证文件在Google驱动器中是否存在,文件路径在子文件夹中。 我创建了existfile方法,在其中列出子文件夹和列表文件并使用测试,但始终countfile = 0。 这是existfile方法代码

 Public Function existfile(v As String) As String
    Dim page As String = ""
    Dim req = Service.Files.List()
    req.Q = "mimeType = 'application/vnd.google-apps.file' and trashed = false "
    req.Spaces = "drive"
    req.Fields = "nextPageToken, items(id, title)"
    req.PageToken = page
    Dim result = req.Execute()
    ' sous doc
    Dim ref = Service.Files.List()
    ref.Q = "mimeType = 'application/vnd.google-apps.folder' and trashed = false "
    Dim fo = ref.Execute()

    'récuprer la reference (ID) du dossier existant , sinon la fonction retourne false en cas d'inexistance'
    Const a As String = "false"
    For Each listf In fo.Items
        For Each test In result.Items
            If (test.Title = v) Then
                Return (test.Id)
            End If
        Next
    Next
    Return (a)
End Function

每个第一个用于列表文件夹,第二个用于列表文件已经存在,但result.item始终为0

文件路径在subfolder下,而子文件夹在bigfolder下

您可能需要检查此.NET快速入门 ,该文档使用Files.List在Google云端硬盘上列出文件。

// Define parameters of request.
FilesResource.ListRequest listRequest = service.Files.List();
listRequest.PageSize = 10;
listRequest.Fields = "nextPageToken, files(id, name)";

// 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("{0} ({1})", file.Name, file.Id);
    }
}
else
{
    Console.WriteLine("No files found.");
}
Console.Read();

附加参考: Google Drive API-通过文件ID检查文件是否存在

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM