2017-07-27 24 views
0

我想知道,如果文件夹(子文件夹)在谷歌存在不会开车,在这个page搜索后,我尝试这样做,我创建了一个布尔函数,返回如果属实文件夹存在。测试,如果一个文件夹中存在或不是谷歌驱动

这里是布尔函数的代码

Public Function exist(v As String) As Boolean 
    Dim pag As String 
    Dim req = Service.Files.List() 
    req.Q = "application/vnd.google-apps.folder" 
    req.PageToken = pag 
    Dim result = req.Execute() 
    If (result.NextPageToken IsNot Nothing) Then 
     Return False 
    Else 
     Return True 
    End If 

End Function 

,并在这里,我怎么称呼它

If (exist(dat_sauv.SelectedItem) = False) Then 
     MessageBox.Show("folder exist") 

    End If 

的例外是

enter image description here

例外存在方法declenched在这个建议

Dim result = req.Execute()

是我的方法是否正确?你能帮我吗

回答

2

你的代码有两个问题。

  1. 不正确的查询

你行req.Q = "application/vnd.google-apps.folder" 应该

req.Q = "mimeType='application/vnd.google-apps.folder' and name = '"+v+"' and trashed=false" 您可能会需要整理的引号和转义(即不要复制/粘贴,并期待第一次工作)

  1. nextPageToken的使用

该文件夹的存在将不会由nextpageToken的存在表示。相反,您需要检查响应中的文件数组是否大于0个元素。

+0

谢谢你,第一,我加了trashed = false 但是接下来,我不明白 –

+0

1.你为什么添加trashed = false。你应该使用我给你的完整查询。 2.阅读文档以了解nextPageToken的功能。还可以使用“立即试用”功能在https://developers.google.com/drive/v3/reference/files/list#try-it以帮助您了解它是如何工作 – pinoyyid

+0

好吧,我会尝试这个API 在我代码,我添加req.Q =“mime类型=‘应用/ vnd.google-apps.folder’AND“” + v +“”和丢弃=假”和我使用用于每个仿羔皮呢但在同一个地方 相同exeception v是文件夹名称 –

相关问题