子文件夹中的现有文件谷歌云端硬盘



我想用 vb.net 验证谷歌云端硬盘中是否存在文件,文件路径在子文件夹中。我创建了 existfile 方法,其中我列出子文件夹和列表文件并使用测试,但总是 countfile=0 。 这是存在文件方法代码

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

文件路径在子文件夹下,子文件夹在大文件夹下

你可能想要查看此 .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 云端硬盘 API - 通过文件 ID 检查文件是否存在

最新更新