2017-05-05 19 views
0

私はこの単純なタスクを達成する方法を探しています。おそらく何か不足しています。GoogleドライブAPI v3特定のフォルダ内にあるファイルを検索する

私はデスクトップアプリケーションを介してドライブからファイルをダウンロードし、それらをローカルホストに保存しています。私は2つの問題があります:

まず、特定のフォルダに含まれているファイルのみをダウンロードしたいので、yドライブをいくつか使用します。ファイルをダウンロードするかどうかを決めるために、ファイルがフォルダ内にあるかどうかを判断する方法が必要です。

これは私がこれまで持っているものである

...

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

// Define parameters of request. 
FilesResource.ListRequest listRequest = service.Files.List(); 
listRequest.PageSize = 100; 
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); 

    if (file.Name == "APIDSWelcome.txt") 
    { 
     id = file.Id; 

     if (file.MimeType == "application/vnd.google-apps.folder") 
     { 

     } 
    } 
    } 

    foreach (var file in files) 
    { 
    if (file.Parents.Contains(id)) 
     { 
     //download 

第二には、私はファイルをダウンロードする方法を発見したが、私は、ダウンロードが完了すると、彼らがしたことを確認していません。ファイルをローカルホスト上の特定の場所に保存するようにアプリケーションに指示するにはどうすればよいですか?これはダウンロード用に使用しているコードです...

ありがとうございます!

答えて

1

あなたはその後、どこに行くん
request.Download(stream)
にダウンロードしてください

https://msdn.microsoft.com/en-us/library/sfezx97z(v=vs.110).aspx

この方法は、あなたが欲しいファイルを保存できるように、ダイアログボックスを開くことができます。

すでにフォルダが空であるかどうかをチェックしているように見えます、またはそれはとの任意のものが含まれている場合:

/ 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); 

if (file.Name == "APIDSWelcome.txt") 
{ 
    id = file.Id; 

    if (file.MimeType == "application/vnd.google-apps.folder") 
    { 

    } 
} 
} 

これは、あなたがドン場合は、デバッグする必要があるところであり、tはその作業を考えます。ここに結果がありますか?あなたがiListの内容を書くとき、あなたは何を見ますか?それは実際に人口ですか?情報があれば、ブレークポイントを挿入してください。

関連する問題